// DO NOT EDIT.
//
// Generated by the Swift generator plugin for the protocol buffer compiler.
// Source: google/protobuf/unittest_lite.proto
//
// For information on using the generated types, please see the documenation:
//   https://github.com/apple/swift-protobuf/

// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc.  All rights reserved.
// https://developers.google.com/protocol-buffers/
//
// 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.

import Foundation
import SwiftProtobuf

// If the compiler emits an error on this type, it is because this file
// was generated by a version of the `protoc` Swift plug-in that is
// incompatible with the version of SwiftProtobuf to which you are linking.
// Please ensure that your are building against the same version of the API
// that was used to generate this file.
fileprivate struct _GeneratedWithProtocGenSwiftVersion: SwiftProtobuf.ProtobufAPIVersionCheck {
  struct _2: SwiftProtobuf.ProtobufAPIVersion_2 {}
  typealias Version = _2
}

enum ProtobufUnittest_ForeignEnumLite: SwiftProtobuf.Enum {
  typealias RawValue = Int
  case foreignLiteFoo // = 4
  case foreignLiteBar // = 5
  case foreignLiteBaz // = 6

  init() {
    self = .foreignLiteFoo
  }

  init?(rawValue: Int) {
    switch rawValue {
    case 4: self = .foreignLiteFoo
    case 5: self = .foreignLiteBar
    case 6: self = .foreignLiteBaz
    default: return nil
    }
  }

  var rawValue: Int {
    switch self {
    case .foreignLiteFoo: return 4
    case .foreignLiteBar: return 5
    case .foreignLiteBaz: return 6
    }
  }

}

#if swift(>=4.2)

extension ProtobufUnittest_ForeignEnumLite: CaseIterable {
  // Support synthesized by the compiler.
}

#endif  // swift(>=4.2)

enum ProtobufUnittest_V1EnumLite: SwiftProtobuf.Enum {
  typealias RawValue = Int
  case v1First // = 1

  init() {
    self = .v1First
  }

  init?(rawValue: Int) {
    switch rawValue {
    case 1: self = .v1First
    default: return nil
    }
  }

  var rawValue: Int {
    switch self {
    case .v1First: return 1
    }
  }

}

#if swift(>=4.2)

extension ProtobufUnittest_V1EnumLite: CaseIterable {
  // Support synthesized by the compiler.
}

#endif  // swift(>=4.2)

enum ProtobufUnittest_V2EnumLite: SwiftProtobuf.Enum {
  typealias RawValue = Int
  case v2First // = 1
  case v2Second // = 2

  init() {
    self = .v2First
  }

  init?(rawValue: Int) {
    switch rawValue {
    case 1: self = .v2First
    case 2: self = .v2Second
    default: return nil
    }
  }

  var rawValue: Int {
    switch self {
    case .v2First: return 1
    case .v2Second: return 2
    }
  }

}

#if swift(>=4.2)

extension ProtobufUnittest_V2EnumLite: CaseIterable {
  // Support synthesized by the compiler.
}

#endif  // swift(>=4.2)

/// Same as TestAllTypes but with the lite runtime.
struct ProtobufUnittest_TestAllTypesLite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  /// Singular
  var optionalInt32: Int32 {
    get {return _storage._optionalInt32 ?? 0}
    set {_uniqueStorage()._optionalInt32 = newValue}
  }
  /// Returns true if `optionalInt32` has been explicitly set.
  var hasOptionalInt32: Bool {return _storage._optionalInt32 != nil}
  /// Clears the value of `optionalInt32`. Subsequent reads from it will return its default value.
  mutating func clearOptionalInt32() {_uniqueStorage()._optionalInt32 = nil}

  var optionalInt64: Int64 {
    get {return _storage._optionalInt64 ?? 0}
    set {_uniqueStorage()._optionalInt64 = newValue}
  }
  /// Returns true if `optionalInt64` has been explicitly set.
  var hasOptionalInt64: Bool {return _storage._optionalInt64 != nil}
  /// Clears the value of `optionalInt64`. Subsequent reads from it will return its default value.
  mutating func clearOptionalInt64() {_uniqueStorage()._optionalInt64 = nil}

  var optionalUint32: UInt32 {
    get {return _storage._optionalUint32 ?? 0}
    set {_uniqueStorage()._optionalUint32 = newValue}
  }
  /// Returns true if `optionalUint32` has been explicitly set.
  var hasOptionalUint32: Bool {return _storage._optionalUint32 != nil}
  /// Clears the value of `optionalUint32`. Subsequent reads from it will return its default value.
  mutating func clearOptionalUint32() {_uniqueStorage()._optionalUint32 = nil}

  var optionalUint64: UInt64 {
    get {return _storage._optionalUint64 ?? 0}
    set {_uniqueStorage()._optionalUint64 = newValue}
  }
  /// Returns true if `optionalUint64` has been explicitly set.
  var hasOptionalUint64: Bool {return _storage._optionalUint64 != nil}
  /// Clears the value of `optionalUint64`. Subsequent reads from it will return its default value.
  mutating func clearOptionalUint64() {_uniqueStorage()._optionalUint64 = nil}

  var optionalSint32: Int32 {
    get {return _storage._optionalSint32 ?? 0}
    set {_uniqueStorage()._optionalSint32 = newValue}
  }
  /// Returns true if `optionalSint32` has been explicitly set.
  var hasOptionalSint32: Bool {return _storage._optionalSint32 != nil}
  /// Clears the value of `optionalSint32`. Subsequent reads from it will return its default value.
  mutating func clearOptionalSint32() {_uniqueStorage()._optionalSint32 = nil}

  var optionalSint64: Int64 {
    get {return _storage._optionalSint64 ?? 0}
    set {_uniqueStorage()._optionalSint64 = newValue}
  }
  /// Returns true if `optionalSint64` has been explicitly set.
  var hasOptionalSint64: Bool {return _storage._optionalSint64 != nil}
  /// Clears the value of `optionalSint64`. Subsequent reads from it will return its default value.
  mutating func clearOptionalSint64() {_uniqueStorage()._optionalSint64 = nil}

  var optionalFixed32: UInt32 {
    get {return _storage._optionalFixed32 ?? 0}
    set {_uniqueStorage()._optionalFixed32 = newValue}
  }
  /// Returns true if `optionalFixed32` has been explicitly set.
  var hasOptionalFixed32: Bool {return _storage._optionalFixed32 != nil}
  /// Clears the value of `optionalFixed32`. Subsequent reads from it will return its default value.
  mutating func clearOptionalFixed32() {_uniqueStorage()._optionalFixed32 = nil}

  var optionalFixed64: UInt64 {
    get {return _storage._optionalFixed64 ?? 0}
    set {_uniqueStorage()._optionalFixed64 = newValue}
  }
  /// Returns true if `optionalFixed64` has been explicitly set.
  var hasOptionalFixed64: Bool {return _storage._optionalFixed64 != nil}
  /// Clears the value of `optionalFixed64`. Subsequent reads from it will return its default value.
  mutating func clearOptionalFixed64() {_uniqueStorage()._optionalFixed64 = nil}

  var optionalSfixed32: Int32 {
    get {return _storage._optionalSfixed32 ?? 0}
    set {_uniqueStorage()._optionalSfixed32 = newValue}
  }
  /// Returns true if `optionalSfixed32` has been explicitly set.
  var hasOptionalSfixed32: Bool {return _storage._optionalSfixed32 != nil}
  /// Clears the value of `optionalSfixed32`. Subsequent reads from it will return its default value.
  mutating func clearOptionalSfixed32() {_uniqueStorage()._optionalSfixed32 = nil}

  var optionalSfixed64: Int64 {
    get {return _storage._optionalSfixed64 ?? 0}
    set {_uniqueStorage()._optionalSfixed64 = newValue}
  }
  /// Returns true if `optionalSfixed64` has been explicitly set.
  var hasOptionalSfixed64: Bool {return _storage._optionalSfixed64 != nil}
  /// Clears the value of `optionalSfixed64`. Subsequent reads from it will return its default value.
  mutating func clearOptionalSfixed64() {_uniqueStorage()._optionalSfixed64 = nil}

  var optionalFloat: Float {
    get {return _storage._optionalFloat ?? 0}
    set {_uniqueStorage()._optionalFloat = newValue}
  }
  /// Returns true if `optionalFloat` has been explicitly set.
  var hasOptionalFloat: Bool {return _storage._optionalFloat != nil}
  /// Clears the value of `optionalFloat`. Subsequent reads from it will return its default value.
  mutating func clearOptionalFloat() {_uniqueStorage()._optionalFloat = nil}

  var optionalDouble: Double {
    get {return _storage._optionalDouble ?? 0}
    set {_uniqueStorage()._optionalDouble = newValue}
  }
  /// Returns true if `optionalDouble` has been explicitly set.
  var hasOptionalDouble: Bool {return _storage._optionalDouble != nil}
  /// Clears the value of `optionalDouble`. Subsequent reads from it will return its default value.
  mutating func clearOptionalDouble() {_uniqueStorage()._optionalDouble = nil}

  var optionalBool: Bool {
    get {return _storage._optionalBool ?? false}
    set {_uniqueStorage()._optionalBool = newValue}
  }
  /// Returns true if `optionalBool` has been explicitly set.
  var hasOptionalBool: Bool {return _storage._optionalBool != nil}
  /// Clears the value of `optionalBool`. Subsequent reads from it will return its default value.
  mutating func clearOptionalBool() {_uniqueStorage()._optionalBool = nil}

  var optionalString: String {
    get {return _storage._optionalString ?? String()}
    set {_uniqueStorage()._optionalString = newValue}
  }
  /// Returns true if `optionalString` has been explicitly set.
  var hasOptionalString: Bool {return _storage._optionalString != nil}
  /// Clears the value of `optionalString`. Subsequent reads from it will return its default value.
  mutating func clearOptionalString() {_uniqueStorage()._optionalString = nil}

  var optionalBytes: Data {
    get {return _storage._optionalBytes ?? SwiftProtobuf.Internal.emptyData}
    set {_uniqueStorage()._optionalBytes = newValue}
  }
  /// Returns true if `optionalBytes` has been explicitly set.
  var hasOptionalBytes: Bool {return _storage._optionalBytes != nil}
  /// Clears the value of `optionalBytes`. Subsequent reads from it will return its default value.
  mutating func clearOptionalBytes() {_uniqueStorage()._optionalBytes = nil}

  var optionalGroup: ProtobufUnittest_TestAllTypesLite.OptionalGroup {
    get {return _storage._optionalGroup ?? ProtobufUnittest_TestAllTypesLite.OptionalGroup()}
    set {_uniqueStorage()._optionalGroup = newValue}
  }
  /// Returns true if `optionalGroup` has been explicitly set.
  var hasOptionalGroup: Bool {return _storage._optionalGroup != nil}
  /// Clears the value of `optionalGroup`. Subsequent reads from it will return its default value.
  mutating func clearOptionalGroup() {_uniqueStorage()._optionalGroup = nil}

  var optionalNestedMessage: ProtobufUnittest_TestAllTypesLite.NestedMessage {
    get {return _storage._optionalNestedMessage ?? ProtobufUnittest_TestAllTypesLite.NestedMessage()}
    set {_uniqueStorage()._optionalNestedMessage = newValue}
  }
  /// Returns true if `optionalNestedMessage` has been explicitly set.
  var hasOptionalNestedMessage: Bool {return _storage._optionalNestedMessage != nil}
  /// Clears the value of `optionalNestedMessage`. Subsequent reads from it will return its default value.
  mutating func clearOptionalNestedMessage() {_uniqueStorage()._optionalNestedMessage = nil}

  var optionalForeignMessage: ProtobufUnittest_ForeignMessageLite {
    get {return _storage._optionalForeignMessage ?? ProtobufUnittest_ForeignMessageLite()}
    set {_uniqueStorage()._optionalForeignMessage = newValue}
  }
  /// Returns true if `optionalForeignMessage` has been explicitly set.
  var hasOptionalForeignMessage: Bool {return _storage._optionalForeignMessage != nil}
  /// Clears the value of `optionalForeignMessage`. Subsequent reads from it will return its default value.
  mutating func clearOptionalForeignMessage() {_uniqueStorage()._optionalForeignMessage = nil}

  var optionalImportMessage: ProtobufUnittestImport_ImportMessageLite {
    get {return _storage._optionalImportMessage ?? ProtobufUnittestImport_ImportMessageLite()}
    set {_uniqueStorage()._optionalImportMessage = newValue}
  }
  /// Returns true if `optionalImportMessage` has been explicitly set.
  var hasOptionalImportMessage: Bool {return _storage._optionalImportMessage != nil}
  /// Clears the value of `optionalImportMessage`. Subsequent reads from it will return its default value.
  mutating func clearOptionalImportMessage() {_uniqueStorage()._optionalImportMessage = nil}

  var optionalNestedEnum: ProtobufUnittest_TestAllTypesLite.NestedEnum {
    get {return _storage._optionalNestedEnum ?? .foo}
    set {_uniqueStorage()._optionalNestedEnum = newValue}
  }
  /// Returns true if `optionalNestedEnum` has been explicitly set.
  var hasOptionalNestedEnum: Bool {return _storage._optionalNestedEnum != nil}
  /// Clears the value of `optionalNestedEnum`. Subsequent reads from it will return its default value.
  mutating func clearOptionalNestedEnum() {_uniqueStorage()._optionalNestedEnum = nil}

  var optionalForeignEnum: ProtobufUnittest_ForeignEnumLite {
    get {return _storage._optionalForeignEnum ?? .foreignLiteFoo}
    set {_uniqueStorage()._optionalForeignEnum = newValue}
  }
  /// Returns true if `optionalForeignEnum` has been explicitly set.
  var hasOptionalForeignEnum: Bool {return _storage._optionalForeignEnum != nil}
  /// Clears the value of `optionalForeignEnum`. Subsequent reads from it will return its default value.
  mutating func clearOptionalForeignEnum() {_uniqueStorage()._optionalForeignEnum = nil}

  var optionalImportEnum: ProtobufUnittestImport_ImportEnumLite {
    get {return _storage._optionalImportEnum ?? .importLiteFoo}
    set {_uniqueStorage()._optionalImportEnum = newValue}
  }
  /// Returns true if `optionalImportEnum` has been explicitly set.
  var hasOptionalImportEnum: Bool {return _storage._optionalImportEnum != nil}
  /// Clears the value of `optionalImportEnum`. Subsequent reads from it will return its default value.
  mutating func clearOptionalImportEnum() {_uniqueStorage()._optionalImportEnum = nil}

  var optionalStringPiece: String {
    get {return _storage._optionalStringPiece ?? String()}
    set {_uniqueStorage()._optionalStringPiece = newValue}
  }
  /// Returns true if `optionalStringPiece` has been explicitly set.
  var hasOptionalStringPiece: Bool {return _storage._optionalStringPiece != nil}
  /// Clears the value of `optionalStringPiece`. Subsequent reads from it will return its default value.
  mutating func clearOptionalStringPiece() {_uniqueStorage()._optionalStringPiece = nil}

  var optionalCord: String {
    get {return _storage._optionalCord ?? String()}
    set {_uniqueStorage()._optionalCord = newValue}
  }
  /// Returns true if `optionalCord` has been explicitly set.
  var hasOptionalCord: Bool {return _storage._optionalCord != nil}
  /// Clears the value of `optionalCord`. Subsequent reads from it will return its default value.
  mutating func clearOptionalCord() {_uniqueStorage()._optionalCord = nil}

  /// Defined in unittest_import_public.proto
  var optionalPublicImportMessage: ProtobufUnittestImport_PublicImportMessageLite {
    get {return _storage._optionalPublicImportMessage ?? ProtobufUnittestImport_PublicImportMessageLite()}
    set {_uniqueStorage()._optionalPublicImportMessage = newValue}
  }
  /// Returns true if `optionalPublicImportMessage` has been explicitly set.
  var hasOptionalPublicImportMessage: Bool {return _storage._optionalPublicImportMessage != nil}
  /// Clears the value of `optionalPublicImportMessage`. Subsequent reads from it will return its default value.
  mutating func clearOptionalPublicImportMessage() {_uniqueStorage()._optionalPublicImportMessage = nil}

  var optionalLazyMessage: ProtobufUnittest_TestAllTypesLite.NestedMessage {
    get {return _storage._optionalLazyMessage ?? ProtobufUnittest_TestAllTypesLite.NestedMessage()}
    set {_uniqueStorage()._optionalLazyMessage = newValue}
  }
  /// Returns true if `optionalLazyMessage` has been explicitly set.
  var hasOptionalLazyMessage: Bool {return _storage._optionalLazyMessage != nil}
  /// Clears the value of `optionalLazyMessage`. Subsequent reads from it will return its default value.
  mutating func clearOptionalLazyMessage() {_uniqueStorage()._optionalLazyMessage = nil}

  /// Repeated
  var repeatedInt32: [Int32] {
    get {return _storage._repeatedInt32}
    set {_uniqueStorage()._repeatedInt32 = newValue}
  }

  var repeatedInt64: [Int64] {
    get {return _storage._repeatedInt64}
    set {_uniqueStorage()._repeatedInt64 = newValue}
  }

  var repeatedUint32: [UInt32] {
    get {return _storage._repeatedUint32}
    set {_uniqueStorage()._repeatedUint32 = newValue}
  }

  var repeatedUint64: [UInt64] {
    get {return _storage._repeatedUint64}
    set {_uniqueStorage()._repeatedUint64 = newValue}
  }

  var repeatedSint32: [Int32] {
    get {return _storage._repeatedSint32}
    set {_uniqueStorage()._repeatedSint32 = newValue}
  }

  var repeatedSint64: [Int64] {
    get {return _storage._repeatedSint64}
    set {_uniqueStorage()._repeatedSint64 = newValue}
  }

  var repeatedFixed32: [UInt32] {
    get {return _storage._repeatedFixed32}
    set {_uniqueStorage()._repeatedFixed32 = newValue}
  }

  var repeatedFixed64: [UInt64] {
    get {return _storage._repeatedFixed64}
    set {_uniqueStorage()._repeatedFixed64 = newValue}
  }

  var repeatedSfixed32: [Int32] {
    get {return _storage._repeatedSfixed32}
    set {_uniqueStorage()._repeatedSfixed32 = newValue}
  }

  var repeatedSfixed64: [Int64] {
    get {return _storage._repeatedSfixed64}
    set {_uniqueStorage()._repeatedSfixed64 = newValue}
  }

  var repeatedFloat: [Float] {
    get {return _storage._repeatedFloat}
    set {_uniqueStorage()._repeatedFloat = newValue}
  }

  var repeatedDouble: [Double] {
    get {return _storage._repeatedDouble}
    set {_uniqueStorage()._repeatedDouble = newValue}
  }

  var repeatedBool: [Bool] {
    get {return _storage._repeatedBool}
    set {_uniqueStorage()._repeatedBool = newValue}
  }

  var repeatedString: [String] {
    get {return _storage._repeatedString}
    set {_uniqueStorage()._repeatedString = newValue}
  }

  var repeatedBytes: [Data] {
    get {return _storage._repeatedBytes}
    set {_uniqueStorage()._repeatedBytes = newValue}
  }

  var repeatedGroup: [ProtobufUnittest_TestAllTypesLite.RepeatedGroup] {
    get {return _storage._repeatedGroup}
    set {_uniqueStorage()._repeatedGroup = newValue}
  }

  var repeatedNestedMessage: [ProtobufUnittest_TestAllTypesLite.NestedMessage] {
    get {return _storage._repeatedNestedMessage}
    set {_uniqueStorage()._repeatedNestedMessage = newValue}
  }

  var repeatedForeignMessage: [ProtobufUnittest_ForeignMessageLite] {
    get {return _storage._repeatedForeignMessage}
    set {_uniqueStorage()._repeatedForeignMessage = newValue}
  }

  var repeatedImportMessage: [ProtobufUnittestImport_ImportMessageLite] {
    get {return _storage._repeatedImportMessage}
    set {_uniqueStorage()._repeatedImportMessage = newValue}
  }

  var repeatedNestedEnum: [ProtobufUnittest_TestAllTypesLite.NestedEnum] {
    get {return _storage._repeatedNestedEnum}
    set {_uniqueStorage()._repeatedNestedEnum = newValue}
  }

  var repeatedForeignEnum: [ProtobufUnittest_ForeignEnumLite] {
    get {return _storage._repeatedForeignEnum}
    set {_uniqueStorage()._repeatedForeignEnum = newValue}
  }

  var repeatedImportEnum: [ProtobufUnittestImport_ImportEnumLite] {
    get {return _storage._repeatedImportEnum}
    set {_uniqueStorage()._repeatedImportEnum = newValue}
  }

  var repeatedStringPiece: [String] {
    get {return _storage._repeatedStringPiece}
    set {_uniqueStorage()._repeatedStringPiece = newValue}
  }

  var repeatedCord: [String] {
    get {return _storage._repeatedCord}
    set {_uniqueStorage()._repeatedCord = newValue}
  }

  var repeatedLazyMessage: [ProtobufUnittest_TestAllTypesLite.NestedMessage] {
    get {return _storage._repeatedLazyMessage}
    set {_uniqueStorage()._repeatedLazyMessage = newValue}
  }

  /// Singular with defaults
  var defaultInt32: Int32 {
    get {return _storage._defaultInt32 ?? 41}
    set {_uniqueStorage()._defaultInt32 = newValue}
  }
  /// Returns true if `defaultInt32` has been explicitly set.
  var hasDefaultInt32: Bool {return _storage._defaultInt32 != nil}
  /// Clears the value of `defaultInt32`. Subsequent reads from it will return its default value.
  mutating func clearDefaultInt32() {_uniqueStorage()._defaultInt32 = nil}

  var defaultInt64: Int64 {
    get {return _storage._defaultInt64 ?? 42}
    set {_uniqueStorage()._defaultInt64 = newValue}
  }
  /// Returns true if `defaultInt64` has been explicitly set.
  var hasDefaultInt64: Bool {return _storage._defaultInt64 != nil}
  /// Clears the value of `defaultInt64`. Subsequent reads from it will return its default value.
  mutating func clearDefaultInt64() {_uniqueStorage()._defaultInt64 = nil}

  var defaultUint32: UInt32 {
    get {return _storage._defaultUint32 ?? 43}
    set {_uniqueStorage()._defaultUint32 = newValue}
  }
  /// Returns true if `defaultUint32` has been explicitly set.
  var hasDefaultUint32: Bool {return _storage._defaultUint32 != nil}
  /// Clears the value of `defaultUint32`. Subsequent reads from it will return its default value.
  mutating func clearDefaultUint32() {_uniqueStorage()._defaultUint32 = nil}

  var defaultUint64: UInt64 {
    get {return _storage._defaultUint64 ?? 44}
    set {_uniqueStorage()._defaultUint64 = newValue}
  }
  /// Returns true if `defaultUint64` has been explicitly set.
  var hasDefaultUint64: Bool {return _storage._defaultUint64 != nil}
  /// Clears the value of `defaultUint64`. Subsequent reads from it will return its default value.
  mutating func clearDefaultUint64() {_uniqueStorage()._defaultUint64 = nil}

  var defaultSint32: Int32 {
    get {return _storage._defaultSint32 ?? -45}
    set {_uniqueStorage()._defaultSint32 = newValue}
  }
  /// Returns true if `defaultSint32` has been explicitly set.
  var hasDefaultSint32: Bool {return _storage._defaultSint32 != nil}
  /// Clears the value of `defaultSint32`. Subsequent reads from it will return its default value.
  mutating func clearDefaultSint32() {_uniqueStorage()._defaultSint32 = nil}

  var defaultSint64: Int64 {
    get {return _storage._defaultSint64 ?? 46}
    set {_uniqueStorage()._defaultSint64 = newValue}
  }
  /// Returns true if `defaultSint64` has been explicitly set.
  var hasDefaultSint64: Bool {return _storage._defaultSint64 != nil}
  /// Clears the value of `defaultSint64`. Subsequent reads from it will return its default value.
  mutating func clearDefaultSint64() {_uniqueStorage()._defaultSint64 = nil}

  var defaultFixed32: UInt32 {
    get {return _storage._defaultFixed32 ?? 47}
    set {_uniqueStorage()._defaultFixed32 = newValue}
  }
  /// Returns true if `defaultFixed32` has been explicitly set.
  var hasDefaultFixed32: Bool {return _storage._defaultFixed32 != nil}
  /// Clears the value of `defaultFixed32`. Subsequent reads from it will return its default value.
  mutating func clearDefaultFixed32() {_uniqueStorage()._defaultFixed32 = nil}

  var defaultFixed64: UInt64 {
    get {return _storage._defaultFixed64 ?? 48}
    set {_uniqueStorage()._defaultFixed64 = newValue}
  }
  /// Returns true if `defaultFixed64` has been explicitly set.
  var hasDefaultFixed64: Bool {return _storage._defaultFixed64 != nil}
  /// Clears the value of `defaultFixed64`. Subsequent reads from it will return its default value.
  mutating func clearDefaultFixed64() {_uniqueStorage()._defaultFixed64 = nil}

  var defaultSfixed32: Int32 {
    get {return _storage._defaultSfixed32 ?? 49}
    set {_uniqueStorage()._defaultSfixed32 = newValue}
  }
  /// Returns true if `defaultSfixed32` has been explicitly set.
  var hasDefaultSfixed32: Bool {return _storage._defaultSfixed32 != nil}
  /// Clears the value of `defaultSfixed32`. Subsequent reads from it will return its default value.
  mutating func clearDefaultSfixed32() {_uniqueStorage()._defaultSfixed32 = nil}

  var defaultSfixed64: Int64 {
    get {return _storage._defaultSfixed64 ?? -50}
    set {_uniqueStorage()._defaultSfixed64 = newValue}
  }
  /// Returns true if `defaultSfixed64` has been explicitly set.
  var hasDefaultSfixed64: Bool {return _storage._defaultSfixed64 != nil}
  /// Clears the value of `defaultSfixed64`. Subsequent reads from it will return its default value.
  mutating func clearDefaultSfixed64() {_uniqueStorage()._defaultSfixed64 = nil}

  var defaultFloat: Float {
    get {return _storage._defaultFloat ?? 51.5}
    set {_uniqueStorage()._defaultFloat = newValue}
  }
  /// Returns true if `defaultFloat` has been explicitly set.
  var hasDefaultFloat: Bool {return _storage._defaultFloat != nil}
  /// Clears the value of `defaultFloat`. Subsequent reads from it will return its default value.
  mutating func clearDefaultFloat() {_uniqueStorage()._defaultFloat = nil}

  var defaultDouble: Double {
    get {return _storage._defaultDouble ?? 52000}
    set {_uniqueStorage()._defaultDouble = newValue}
  }
  /// Returns true if `defaultDouble` has been explicitly set.
  var hasDefaultDouble: Bool {return _storage._defaultDouble != nil}
  /// Clears the value of `defaultDouble`. Subsequent reads from it will return its default value.
  mutating func clearDefaultDouble() {_uniqueStorage()._defaultDouble = nil}

  var defaultBool: Bool {
    get {return _storage._defaultBool ?? true}
    set {_uniqueStorage()._defaultBool = newValue}
  }
  /// Returns true if `defaultBool` has been explicitly set.
  var hasDefaultBool: Bool {return _storage._defaultBool != nil}
  /// Clears the value of `defaultBool`. Subsequent reads from it will return its default value.
  mutating func clearDefaultBool() {_uniqueStorage()._defaultBool = nil}

  var defaultString: String {
    get {return _storage._defaultString ?? "hello"}
    set {_uniqueStorage()._defaultString = newValue}
  }
  /// Returns true if `defaultString` has been explicitly set.
  var hasDefaultString: Bool {return _storage._defaultString != nil}
  /// Clears the value of `defaultString`. Subsequent reads from it will return its default value.
  mutating func clearDefaultString() {_uniqueStorage()._defaultString = nil}

  var defaultBytes: Data {
    get {return _storage._defaultBytes ?? Data([119, 111, 114, 108, 100])}
    set {_uniqueStorage()._defaultBytes = newValue}
  }
  /// Returns true if `defaultBytes` has been explicitly set.
  var hasDefaultBytes: Bool {return _storage._defaultBytes != nil}
  /// Clears the value of `defaultBytes`. Subsequent reads from it will return its default value.
  mutating func clearDefaultBytes() {_uniqueStorage()._defaultBytes = nil}

  var defaultNestedEnum: ProtobufUnittest_TestAllTypesLite.NestedEnum {
    get {return _storage._defaultNestedEnum ?? .bar}
    set {_uniqueStorage()._defaultNestedEnum = newValue}
  }
  /// Returns true if `defaultNestedEnum` has been explicitly set.
  var hasDefaultNestedEnum: Bool {return _storage._defaultNestedEnum != nil}
  /// Clears the value of `defaultNestedEnum`. Subsequent reads from it will return its default value.
  mutating func clearDefaultNestedEnum() {_uniqueStorage()._defaultNestedEnum = nil}

  var defaultForeignEnum: ProtobufUnittest_ForeignEnumLite {
    get {return _storage._defaultForeignEnum ?? .foreignLiteBar}
    set {_uniqueStorage()._defaultForeignEnum = newValue}
  }
  /// Returns true if `defaultForeignEnum` has been explicitly set.
  var hasDefaultForeignEnum: Bool {return _storage._defaultForeignEnum != nil}
  /// Clears the value of `defaultForeignEnum`. Subsequent reads from it will return its default value.
  mutating func clearDefaultForeignEnum() {_uniqueStorage()._defaultForeignEnum = nil}

  var defaultImportEnum: ProtobufUnittestImport_ImportEnumLite {
    get {return _storage._defaultImportEnum ?? .importLiteBar}
    set {_uniqueStorage()._defaultImportEnum = newValue}
  }
  /// Returns true if `defaultImportEnum` has been explicitly set.
  var hasDefaultImportEnum: Bool {return _storage._defaultImportEnum != nil}
  /// Clears the value of `defaultImportEnum`. Subsequent reads from it will return its default value.
  mutating func clearDefaultImportEnum() {_uniqueStorage()._defaultImportEnum = nil}

  var defaultStringPiece: String {
    get {return _storage._defaultStringPiece ?? "abc"}
    set {_uniqueStorage()._defaultStringPiece = newValue}
  }
  /// Returns true if `defaultStringPiece` has been explicitly set.
  var hasDefaultStringPiece: Bool {return _storage._defaultStringPiece != nil}
  /// Clears the value of `defaultStringPiece`. Subsequent reads from it will return its default value.
  mutating func clearDefaultStringPiece() {_uniqueStorage()._defaultStringPiece = nil}

  var defaultCord: String {
    get {return _storage._defaultCord ?? "123"}
    set {_uniqueStorage()._defaultCord = newValue}
  }
  /// Returns true if `defaultCord` has been explicitly set.
  var hasDefaultCord: Bool {return _storage._defaultCord != nil}
  /// Clears the value of `defaultCord`. Subsequent reads from it will return its default value.
  mutating func clearDefaultCord() {_uniqueStorage()._defaultCord = nil}

  /// For oneof test
  var oneofField: OneOf_OneofField? {
    get {return _storage._oneofField}
    set {_uniqueStorage()._oneofField = newValue}
  }

  var oneofUint32: UInt32 {
    get {
      if case .oneofUint32(let v)? = _storage._oneofField {return v}
      return 0
    }
    set {_uniqueStorage()._oneofField = .oneofUint32(newValue)}
  }

  var oneofNestedMessage: ProtobufUnittest_TestAllTypesLite.NestedMessage {
    get {
      if case .oneofNestedMessage(let v)? = _storage._oneofField {return v}
      return ProtobufUnittest_TestAllTypesLite.NestedMessage()
    }
    set {_uniqueStorage()._oneofField = .oneofNestedMessage(newValue)}
  }

  var oneofString: String {
    get {
      if case .oneofString(let v)? = _storage._oneofField {return v}
      return String()
    }
    set {_uniqueStorage()._oneofField = .oneofString(newValue)}
  }

  var oneofBytes: Data {
    get {
      if case .oneofBytes(let v)? = _storage._oneofField {return v}
      return SwiftProtobuf.Internal.emptyData
    }
    set {_uniqueStorage()._oneofField = .oneofBytes(newValue)}
  }

  var oneofLazyNestedMessage: ProtobufUnittest_TestAllTypesLite.NestedMessage {
    get {
      if case .oneofLazyNestedMessage(let v)? = _storage._oneofField {return v}
      return ProtobufUnittest_TestAllTypesLite.NestedMessage()
    }
    set {_uniqueStorage()._oneofField = .oneofLazyNestedMessage(newValue)}
  }

  /// Tests toString for non-repeated fields with a list suffix
  var deceptivelyNamedList: Int32 {
    get {return _storage._deceptivelyNamedList ?? 0}
    set {_uniqueStorage()._deceptivelyNamedList = newValue}
  }
  /// Returns true if `deceptivelyNamedList` has been explicitly set.
  var hasDeceptivelyNamedList: Bool {return _storage._deceptivelyNamedList != nil}
  /// Clears the value of `deceptivelyNamedList`. Subsequent reads from it will return its default value.
  mutating func clearDeceptivelyNamedList() {_uniqueStorage()._deceptivelyNamedList = nil}

  var unknownFields = SwiftProtobuf.UnknownStorage()

  /// For oneof test
  enum OneOf_OneofField: Equatable {
    case oneofUint32(UInt32)
    case oneofNestedMessage(ProtobufUnittest_TestAllTypesLite.NestedMessage)
    case oneofString(String)
    case oneofBytes(Data)
    case oneofLazyNestedMessage(ProtobufUnittest_TestAllTypesLite.NestedMessage)

  #if !swift(>=4.1)
    static func ==(lhs: ProtobufUnittest_TestAllTypesLite.OneOf_OneofField, rhs: ProtobufUnittest_TestAllTypesLite.OneOf_OneofField) -> Bool {
      switch (lhs, rhs) {
      case (.oneofUint32(let l), .oneofUint32(let r)): return l == r
      case (.oneofNestedMessage(let l), .oneofNestedMessage(let r)): return l == r
      case (.oneofString(let l), .oneofString(let r)): return l == r
      case (.oneofBytes(let l), .oneofBytes(let r)): return l == r
      case (.oneofLazyNestedMessage(let l), .oneofLazyNestedMessage(let r)): return l == r
      default: return false
      }
    }
  #endif
  }

  enum NestedEnum: SwiftProtobuf.Enum {
    typealias RawValue = Int
    case foo // = 1
    case bar // = 2
    case baz // = 3

    init() {
      self = .foo
    }

    init?(rawValue: Int) {
      switch rawValue {
      case 1: self = .foo
      case 2: self = .bar
      case 3: self = .baz
      default: return nil
      }
    }

    var rawValue: Int {
      switch self {
      case .foo: return 1
      case .bar: return 2
      case .baz: return 3
      }
    }

  }

  struct NestedMessage {
    // SwiftProtobuf.Message conformance is added in an extension below. See the
    // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
    // methods supported on all messages.

    var bb: Int32 {
      get {return _bb ?? 0}
      set {_bb = newValue}
    }
    /// Returns true if `bb` has been explicitly set.
    var hasBb: Bool {return self._bb != nil}
    /// Clears the value of `bb`. Subsequent reads from it will return its default value.
    mutating func clearBb() {self._bb = nil}

    var cc: Int64 {
      get {return _cc ?? 0}
      set {_cc = newValue}
    }
    /// Returns true if `cc` has been explicitly set.
    var hasCc: Bool {return self._cc != nil}
    /// Clears the value of `cc`. Subsequent reads from it will return its default value.
    mutating func clearCc() {self._cc = nil}

    var unknownFields = SwiftProtobuf.UnknownStorage()

    init() {}

    fileprivate var _bb: Int32? = nil
    fileprivate var _cc: Int64? = nil
  }

  struct OptionalGroup {
    // SwiftProtobuf.Message conformance is added in an extension below. See the
    // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
    // methods supported on all messages.

    var a: Int32 {
      get {return _a ?? 0}
      set {_a = newValue}
    }
    /// Returns true if `a` has been explicitly set.
    var hasA: Bool {return self._a != nil}
    /// Clears the value of `a`. Subsequent reads from it will return its default value.
    mutating func clearA() {self._a = nil}

    var unknownFields = SwiftProtobuf.UnknownStorage()

    init() {}

    fileprivate var _a: Int32? = nil
  }

  struct RepeatedGroup {
    // SwiftProtobuf.Message conformance is added in an extension below. See the
    // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
    // methods supported on all messages.

    var a: Int32 {
      get {return _a ?? 0}
      set {_a = newValue}
    }
    /// Returns true if `a` has been explicitly set.
    var hasA: Bool {return self._a != nil}
    /// Clears the value of `a`. Subsequent reads from it will return its default value.
    mutating func clearA() {self._a = nil}

    var unknownFields = SwiftProtobuf.UnknownStorage()

    init() {}

    fileprivate var _a: Int32? = nil
  }

  init() {}

  fileprivate var _storage = _StorageClass.defaultInstance
}

#if swift(>=4.2)

extension ProtobufUnittest_TestAllTypesLite.NestedEnum: CaseIterable {
  // Support synthesized by the compiler.
}

#endif  // swift(>=4.2)

struct ProtobufUnittest_ForeignMessageLite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var c: Int32 {
    get {return _c ?? 0}
    set {_c = newValue}
  }
  /// Returns true if `c` has been explicitly set.
  var hasC: Bool {return self._c != nil}
  /// Clears the value of `c`. Subsequent reads from it will return its default value.
  mutating func clearC() {self._c = nil}

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}

  fileprivate var _c: Int32? = nil
}

struct ProtobufUnittest_TestPackedTypesLite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var packedInt32: [Int32] = []

  var packedInt64: [Int64] = []

  var packedUint32: [UInt32] = []

  var packedUint64: [UInt64] = []

  var packedSint32: [Int32] = []

  var packedSint64: [Int64] = []

  var packedFixed32: [UInt32] = []

  var packedFixed64: [UInt64] = []

  var packedSfixed32: [Int32] = []

  var packedSfixed64: [Int64] = []

  var packedFloat: [Float] = []

  var packedDouble: [Double] = []

  var packedBool: [Bool] = []

  var packedEnum: [ProtobufUnittest_ForeignEnumLite] = []

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}
}

struct ProtobufUnittest_TestAllExtensionsLite: SwiftProtobuf.ExtensibleMessage {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}

  var _protobuf_extensionFieldValues = SwiftProtobuf.ExtensionFieldValueSet()
}

struct ProtobufUnittest_OptionalGroup_extension_lite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var a: Int32 {
    get {return _a ?? 0}
    set {_a = newValue}
  }
  /// Returns true if `a` has been explicitly set.
  var hasA: Bool {return self._a != nil}
  /// Clears the value of `a`. Subsequent reads from it will return its default value.
  mutating func clearA() {self._a = nil}

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}

  fileprivate var _a: Int32? = nil
}

struct ProtobufUnittest_RepeatedGroup_extension_lite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var a: Int32 {
    get {return _a ?? 0}
    set {_a = newValue}
  }
  /// Returns true if `a` has been explicitly set.
  var hasA: Bool {return self._a != nil}
  /// Clears the value of `a`. Subsequent reads from it will return its default value.
  mutating func clearA() {self._a = nil}

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}

  fileprivate var _a: Int32? = nil
}

struct ProtobufUnittest_TestPackedExtensionsLite: SwiftProtobuf.ExtensibleMessage {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}

  var _protobuf_extensionFieldValues = SwiftProtobuf.ExtensionFieldValueSet()
}

struct ProtobufUnittest_TestNestedExtensionLite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}
}

/// Test that deprecated fields work.  We only verify that they compile (at one
/// point this failed).
struct ProtobufUnittest_TestDeprecatedLite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var deprecatedField: Int32 {
    get {return _deprecatedField ?? 0}
    set {_deprecatedField = newValue}
  }
  /// Returns true if `deprecatedField` has been explicitly set.
  var hasDeprecatedField: Bool {return self._deprecatedField != nil}
  /// Clears the value of `deprecatedField`. Subsequent reads from it will return its default value.
  mutating func clearDeprecatedField() {self._deprecatedField = nil}

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}

  fileprivate var _deprecatedField: Int32? = nil
}

/// See the comments of the same type in unittest.proto.
struct ProtobufUnittest_TestParsingMergeLite: SwiftProtobuf.ExtensibleMessage {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var requiredAllTypes: ProtobufUnittest_TestAllTypesLite {
    get {return _storage._requiredAllTypes ?? ProtobufUnittest_TestAllTypesLite()}
    set {_uniqueStorage()._requiredAllTypes = newValue}
  }
  /// Returns true if `requiredAllTypes` has been explicitly set.
  var hasRequiredAllTypes: Bool {return _storage._requiredAllTypes != nil}
  /// Clears the value of `requiredAllTypes`. Subsequent reads from it will return its default value.
  mutating func clearRequiredAllTypes() {_uniqueStorage()._requiredAllTypes = nil}

  var optionalAllTypes: ProtobufUnittest_TestAllTypesLite {
    get {return _storage._optionalAllTypes ?? ProtobufUnittest_TestAllTypesLite()}
    set {_uniqueStorage()._optionalAllTypes = newValue}
  }
  /// Returns true if `optionalAllTypes` has been explicitly set.
  var hasOptionalAllTypes: Bool {return _storage._optionalAllTypes != nil}
  /// Clears the value of `optionalAllTypes`. Subsequent reads from it will return its default value.
  mutating func clearOptionalAllTypes() {_uniqueStorage()._optionalAllTypes = nil}

  var repeatedAllTypes: [ProtobufUnittest_TestAllTypesLite] {
    get {return _storage._repeatedAllTypes}
    set {_uniqueStorage()._repeatedAllTypes = newValue}
  }

  var optionalGroup: ProtobufUnittest_TestParsingMergeLite.OptionalGroup {
    get {return _storage._optionalGroup ?? ProtobufUnittest_TestParsingMergeLite.OptionalGroup()}
    set {_uniqueStorage()._optionalGroup = newValue}
  }
  /// Returns true if `optionalGroup` has been explicitly set.
  var hasOptionalGroup: Bool {return _storage._optionalGroup != nil}
  /// Clears the value of `optionalGroup`. Subsequent reads from it will return its default value.
  mutating func clearOptionalGroup() {_uniqueStorage()._optionalGroup = nil}

  var repeatedGroup: [ProtobufUnittest_TestParsingMergeLite.RepeatedGroup] {
    get {return _storage._repeatedGroup}
    set {_uniqueStorage()._repeatedGroup = newValue}
  }

  var unknownFields = SwiftProtobuf.UnknownStorage()

  struct RepeatedFieldsGenerator {
    // SwiftProtobuf.Message conformance is added in an extension below. See the
    // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
    // methods supported on all messages.

    var field1: [ProtobufUnittest_TestAllTypesLite] = []

    var field2: [ProtobufUnittest_TestAllTypesLite] = []

    var field3: [ProtobufUnittest_TestAllTypesLite] = []

    var group1: [ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.Group1] = []

    var group2: [ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.Group2] = []

    var ext1: [ProtobufUnittest_TestAllTypesLite] = []

    var ext2: [ProtobufUnittest_TestAllTypesLite] = []

    var unknownFields = SwiftProtobuf.UnknownStorage()

    struct Group1 {
      // SwiftProtobuf.Message conformance is added in an extension below. See the
      // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
      // methods supported on all messages.

      var field1: ProtobufUnittest_TestAllTypesLite {
        get {return _storage._field1 ?? ProtobufUnittest_TestAllTypesLite()}
        set {_uniqueStorage()._field1 = newValue}
      }
      /// Returns true if `field1` has been explicitly set.
      var hasField1: Bool {return _storage._field1 != nil}
      /// Clears the value of `field1`. Subsequent reads from it will return its default value.
      mutating func clearField1() {_uniqueStorage()._field1 = nil}

      var unknownFields = SwiftProtobuf.UnknownStorage()

      init() {}

      fileprivate var _storage = _StorageClass.defaultInstance
    }

    struct Group2 {
      // SwiftProtobuf.Message conformance is added in an extension below. See the
      // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
      // methods supported on all messages.

      var field1: ProtobufUnittest_TestAllTypesLite {
        get {return _storage._field1 ?? ProtobufUnittest_TestAllTypesLite()}
        set {_uniqueStorage()._field1 = newValue}
      }
      /// Returns true if `field1` has been explicitly set.
      var hasField1: Bool {return _storage._field1 != nil}
      /// Clears the value of `field1`. Subsequent reads from it will return its default value.
      mutating func clearField1() {_uniqueStorage()._field1 = nil}

      var unknownFields = SwiftProtobuf.UnknownStorage()

      init() {}

      fileprivate var _storage = _StorageClass.defaultInstance
    }

    init() {}
  }

  struct OptionalGroup {
    // SwiftProtobuf.Message conformance is added in an extension below. See the
    // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
    // methods supported on all messages.

    var optionalGroupAllTypes: ProtobufUnittest_TestAllTypesLite {
      get {return _storage._optionalGroupAllTypes ?? ProtobufUnittest_TestAllTypesLite()}
      set {_uniqueStorage()._optionalGroupAllTypes = newValue}
    }
    /// Returns true if `optionalGroupAllTypes` has been explicitly set.
    var hasOptionalGroupAllTypes: Bool {return _storage._optionalGroupAllTypes != nil}
    /// Clears the value of `optionalGroupAllTypes`. Subsequent reads from it will return its default value.
    mutating func clearOptionalGroupAllTypes() {_uniqueStorage()._optionalGroupAllTypes = nil}

    var unknownFields = SwiftProtobuf.UnknownStorage()

    init() {}

    fileprivate var _storage = _StorageClass.defaultInstance
  }

  struct RepeatedGroup {
    // SwiftProtobuf.Message conformance is added in an extension below. See the
    // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
    // methods supported on all messages.

    var repeatedGroupAllTypes: ProtobufUnittest_TestAllTypesLite {
      get {return _storage._repeatedGroupAllTypes ?? ProtobufUnittest_TestAllTypesLite()}
      set {_uniqueStorage()._repeatedGroupAllTypes = newValue}
    }
    /// Returns true if `repeatedGroupAllTypes` has been explicitly set.
    var hasRepeatedGroupAllTypes: Bool {return _storage._repeatedGroupAllTypes != nil}
    /// Clears the value of `repeatedGroupAllTypes`. Subsequent reads from it will return its default value.
    mutating func clearRepeatedGroupAllTypes() {_uniqueStorage()._repeatedGroupAllTypes = nil}

    var unknownFields = SwiftProtobuf.UnknownStorage()

    init() {}

    fileprivate var _storage = _StorageClass.defaultInstance
  }

  init() {}

  var _protobuf_extensionFieldValues = SwiftProtobuf.ExtensionFieldValueSet()
  fileprivate var _storage = _StorageClass.defaultInstance
}

/// TestEmptyMessageLite is used to test unknown fields support in lite mode.
struct ProtobufUnittest_TestEmptyMessageLite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}
}

/// Like above, but declare all field numbers as potential extensions.  No
/// actual extensions should ever be defined for this type.
struct ProtobufUnittest_TestEmptyMessageWithExtensionsLite: SwiftProtobuf.ExtensibleMessage {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}

  var _protobuf_extensionFieldValues = SwiftProtobuf.ExtensionFieldValueSet()
}

struct ProtobufUnittest_V1MessageLite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var intField: Int32 {
    get {return _intField ?? 0}
    set {_intField = newValue}
  }
  /// Returns true if `intField` has been explicitly set.
  var hasIntField: Bool {return self._intField != nil}
  /// Clears the value of `intField`. Subsequent reads from it will return its default value.
  mutating func clearIntField() {self._intField = nil}

  var enumField: ProtobufUnittest_V1EnumLite {
    get {return _enumField ?? .v1First}
    set {_enumField = newValue}
  }
  /// Returns true if `enumField` has been explicitly set.
  var hasEnumField: Bool {return self._enumField != nil}
  /// Clears the value of `enumField`. Subsequent reads from it will return its default value.
  mutating func clearEnumField() {self._enumField = nil}

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}

  fileprivate var _intField: Int32? = nil
  fileprivate var _enumField: ProtobufUnittest_V1EnumLite? = nil
}

struct ProtobufUnittest_V2MessageLite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var intField: Int32 {
    get {return _intField ?? 0}
    set {_intField = newValue}
  }
  /// Returns true if `intField` has been explicitly set.
  var hasIntField: Bool {return self._intField != nil}
  /// Clears the value of `intField`. Subsequent reads from it will return its default value.
  mutating func clearIntField() {self._intField = nil}

  var enumField: ProtobufUnittest_V2EnumLite {
    get {return _enumField ?? .v2First}
    set {_enumField = newValue}
  }
  /// Returns true if `enumField` has been explicitly set.
  var hasEnumField: Bool {return self._enumField != nil}
  /// Clears the value of `enumField`. Subsequent reads from it will return its default value.
  mutating func clearEnumField() {self._enumField = nil}

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}

  fileprivate var _intField: Int32? = nil
  fileprivate var _enumField: ProtobufUnittest_V2EnumLite? = nil
}

struct ProtobufUnittest_TestHugeFieldNumbersLite: SwiftProtobuf.ExtensibleMessage {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var optionalInt32: Int32 {
    get {return _storage._optionalInt32 ?? 0}
    set {_uniqueStorage()._optionalInt32 = newValue}
  }
  /// Returns true if `optionalInt32` has been explicitly set.
  var hasOptionalInt32: Bool {return _storage._optionalInt32 != nil}
  /// Clears the value of `optionalInt32`. Subsequent reads from it will return its default value.
  mutating func clearOptionalInt32() {_uniqueStorage()._optionalInt32 = nil}

  var fixed32: Int32 {
    get {return _storage._fixed32 ?? 0}
    set {_uniqueStorage()._fixed32 = newValue}
  }
  /// Returns true if `fixed32` has been explicitly set.
  var hasFixed32: Bool {return _storage._fixed32 != nil}
  /// Clears the value of `fixed32`. Subsequent reads from it will return its default value.
  mutating func clearFixed32() {_uniqueStorage()._fixed32 = nil}

  var repeatedInt32: [Int32] {
    get {return _storage._repeatedInt32}
    set {_uniqueStorage()._repeatedInt32 = newValue}
  }

  var packedInt32: [Int32] {
    get {return _storage._packedInt32}
    set {_uniqueStorage()._packedInt32 = newValue}
  }

  var optionalEnum: ProtobufUnittest_ForeignEnumLite {
    get {return _storage._optionalEnum ?? .foreignLiteFoo}
    set {_uniqueStorage()._optionalEnum = newValue}
  }
  /// Returns true if `optionalEnum` has been explicitly set.
  var hasOptionalEnum: Bool {return _storage._optionalEnum != nil}
  /// Clears the value of `optionalEnum`. Subsequent reads from it will return its default value.
  mutating func clearOptionalEnum() {_uniqueStorage()._optionalEnum = nil}

  var optionalString: String {
    get {return _storage._optionalString ?? String()}
    set {_uniqueStorage()._optionalString = newValue}
  }
  /// Returns true if `optionalString` has been explicitly set.
  var hasOptionalString: Bool {return _storage._optionalString != nil}
  /// Clears the value of `optionalString`. Subsequent reads from it will return its default value.
  mutating func clearOptionalString() {_uniqueStorage()._optionalString = nil}

  var optionalBytes: Data {
    get {return _storage._optionalBytes ?? SwiftProtobuf.Internal.emptyData}
    set {_uniqueStorage()._optionalBytes = newValue}
  }
  /// Returns true if `optionalBytes` has been explicitly set.
  var hasOptionalBytes: Bool {return _storage._optionalBytes != nil}
  /// Clears the value of `optionalBytes`. Subsequent reads from it will return its default value.
  mutating func clearOptionalBytes() {_uniqueStorage()._optionalBytes = nil}

  var optionalMessage: ProtobufUnittest_ForeignMessageLite {
    get {return _storage._optionalMessage ?? ProtobufUnittest_ForeignMessageLite()}
    set {_uniqueStorage()._optionalMessage = newValue}
  }
  /// Returns true if `optionalMessage` has been explicitly set.
  var hasOptionalMessage: Bool {return _storage._optionalMessage != nil}
  /// Clears the value of `optionalMessage`. Subsequent reads from it will return its default value.
  mutating func clearOptionalMessage() {_uniqueStorage()._optionalMessage = nil}

  var optionalGroup: ProtobufUnittest_TestHugeFieldNumbersLite.OptionalGroup {
    get {return _storage._optionalGroup ?? ProtobufUnittest_TestHugeFieldNumbersLite.OptionalGroup()}
    set {_uniqueStorage()._optionalGroup = newValue}
  }
  /// Returns true if `optionalGroup` has been explicitly set.
  var hasOptionalGroup: Bool {return _storage._optionalGroup != nil}
  /// Clears the value of `optionalGroup`. Subsequent reads from it will return its default value.
  mutating func clearOptionalGroup() {_uniqueStorage()._optionalGroup = nil}

  var stringStringMap: Dictionary<String,String> {
    get {return _storage._stringStringMap}
    set {_uniqueStorage()._stringStringMap = newValue}
  }

  var oneofField: OneOf_OneofField? {
    get {return _storage._oneofField}
    set {_uniqueStorage()._oneofField = newValue}
  }

  var oneofUint32: UInt32 {
    get {
      if case .oneofUint32(let v)? = _storage._oneofField {return v}
      return 0
    }
    set {_uniqueStorage()._oneofField = .oneofUint32(newValue)}
  }

  var oneofTestAllTypes: ProtobufUnittest_TestAllTypesLite {
    get {
      if case .oneofTestAllTypes(let v)? = _storage._oneofField {return v}
      return ProtobufUnittest_TestAllTypesLite()
    }
    set {_uniqueStorage()._oneofField = .oneofTestAllTypes(newValue)}
  }

  var oneofString: String {
    get {
      if case .oneofString(let v)? = _storage._oneofField {return v}
      return String()
    }
    set {_uniqueStorage()._oneofField = .oneofString(newValue)}
  }

  var oneofBytes: Data {
    get {
      if case .oneofBytes(let v)? = _storage._oneofField {return v}
      return SwiftProtobuf.Internal.emptyData
    }
    set {_uniqueStorage()._oneofField = .oneofBytes(newValue)}
  }

  var unknownFields = SwiftProtobuf.UnknownStorage()

  enum OneOf_OneofField: Equatable {
    case oneofUint32(UInt32)
    case oneofTestAllTypes(ProtobufUnittest_TestAllTypesLite)
    case oneofString(String)
    case oneofBytes(Data)

  #if !swift(>=4.1)
    static func ==(lhs: ProtobufUnittest_TestHugeFieldNumbersLite.OneOf_OneofField, rhs: ProtobufUnittest_TestHugeFieldNumbersLite.OneOf_OneofField) -> Bool {
      switch (lhs, rhs) {
      case (.oneofUint32(let l), .oneofUint32(let r)): return l == r
      case (.oneofTestAllTypes(let l), .oneofTestAllTypes(let r)): return l == r
      case (.oneofString(let l), .oneofString(let r)): return l == r
      case (.oneofBytes(let l), .oneofBytes(let r)): return l == r
      default: return false
      }
    }
  #endif
  }

  struct OptionalGroup {
    // SwiftProtobuf.Message conformance is added in an extension below. See the
    // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
    // methods supported on all messages.

    var groupA: Int32 {
      get {return _groupA ?? 0}
      set {_groupA = newValue}
    }
    /// Returns true if `groupA` has been explicitly set.
    var hasGroupA: Bool {return self._groupA != nil}
    /// Clears the value of `groupA`. Subsequent reads from it will return its default value.
    mutating func clearGroupA() {self._groupA = nil}

    var unknownFields = SwiftProtobuf.UnknownStorage()

    init() {}

    fileprivate var _groupA: Int32? = nil
  }

  init() {}

  var _protobuf_extensionFieldValues = SwiftProtobuf.ExtensionFieldValueSet()
  fileprivate var _storage = _StorageClass.defaultInstance
}

struct ProtobufUnittest_TestOneofParsingLite {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var oneofField: OneOf_OneofField? {
    get {return _storage._oneofField}
    set {_uniqueStorage()._oneofField = newValue}
  }

  var oneofInt32: Int32 {
    get {
      if case .oneofInt32(let v)? = _storage._oneofField {return v}
      return 0
    }
    set {_uniqueStorage()._oneofField = .oneofInt32(newValue)}
  }

  var oneofSubmessage: ProtobufUnittest_TestAllTypesLite {
    get {
      if case .oneofSubmessage(let v)? = _storage._oneofField {return v}
      return ProtobufUnittest_TestAllTypesLite()
    }
    set {_uniqueStorage()._oneofField = .oneofSubmessage(newValue)}
  }

  var oneofString: String {
    get {
      if case .oneofString(let v)? = _storage._oneofField {return v}
      return String()
    }
    set {_uniqueStorage()._oneofField = .oneofString(newValue)}
  }

  var oneofBytes: Data {
    get {
      if case .oneofBytes(let v)? = _storage._oneofField {return v}
      return Data([100, 101, 102, 97, 117, 108, 116, 32, 98, 121, 116, 101, 115])
    }
    set {_uniqueStorage()._oneofField = .oneofBytes(newValue)}
  }

  var oneofStringCord: String {
    get {
      if case .oneofStringCord(let v)? = _storage._oneofField {return v}
      return "default Cord"
    }
    set {_uniqueStorage()._oneofField = .oneofStringCord(newValue)}
  }

  var oneofBytesCord: Data {
    get {
      if case .oneofBytesCord(let v)? = _storage._oneofField {return v}
      return SwiftProtobuf.Internal.emptyData
    }
    set {_uniqueStorage()._oneofField = .oneofBytesCord(newValue)}
  }

  var oneofStringStringPiece: String {
    get {
      if case .oneofStringStringPiece(let v)? = _storage._oneofField {return v}
      return String()
    }
    set {_uniqueStorage()._oneofField = .oneofStringStringPiece(newValue)}
  }

  var oneofBytesStringPiece: Data {
    get {
      if case .oneofBytesStringPiece(let v)? = _storage._oneofField {return v}
      return Data([100, 101, 102, 97, 117, 108, 116, 32, 83, 116, 114, 105, 110, 103, 80, 105, 101, 99, 101])
    }
    set {_uniqueStorage()._oneofField = .oneofBytesStringPiece(newValue)}
  }

  var oneofEnum: ProtobufUnittest_V2EnumLite {
    get {
      if case .oneofEnum(let v)? = _storage._oneofField {return v}
      return .v2First
    }
    set {_uniqueStorage()._oneofField = .oneofEnum(newValue)}
  }

  var unknownFields = SwiftProtobuf.UnknownStorage()

  enum OneOf_OneofField: Equatable {
    case oneofInt32(Int32)
    case oneofSubmessage(ProtobufUnittest_TestAllTypesLite)
    case oneofString(String)
    case oneofBytes(Data)
    case oneofStringCord(String)
    case oneofBytesCord(Data)
    case oneofStringStringPiece(String)
    case oneofBytesStringPiece(Data)
    case oneofEnum(ProtobufUnittest_V2EnumLite)

  #if !swift(>=4.1)
    static func ==(lhs: ProtobufUnittest_TestOneofParsingLite.OneOf_OneofField, rhs: ProtobufUnittest_TestOneofParsingLite.OneOf_OneofField) -> Bool {
      switch (lhs, rhs) {
      case (.oneofInt32(let l), .oneofInt32(let r)): return l == r
      case (.oneofSubmessage(let l), .oneofSubmessage(let r)): return l == r
      case (.oneofString(let l), .oneofString(let r)): return l == r
      case (.oneofBytes(let l), .oneofBytes(let r)): return l == r
      case (.oneofStringCord(let l), .oneofStringCord(let r)): return l == r
      case (.oneofBytesCord(let l), .oneofBytesCord(let r)): return l == r
      case (.oneofStringStringPiece(let l), .oneofStringStringPiece(let r)): return l == r
      case (.oneofBytesStringPiece(let l), .oneofBytesStringPiece(let r)): return l == r
      case (.oneofEnum(let l), .oneofEnum(let r)): return l == r
      default: return false
      }
    }
  #endif
  }

  init() {}

  fileprivate var _storage = _StorageClass.defaultInstance
}

/// The following four messages are set up to test for wire compatibility between
/// packed and non-packed repeated fields. We use the field number 2048, because
/// that is large enough to require a 3-byte varint for the tag.
struct ProtobufUnittest_PackedInt32 {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var repeatedInt32: [Int32] = []

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}
}

struct ProtobufUnittest_NonPackedInt32 {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var repeatedInt32: [Int32] = []

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}
}

struct ProtobufUnittest_PackedFixed32 {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var repeatedFixed32: [UInt32] = []

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}
}

struct ProtobufUnittest_NonPackedFixed32 {
  // SwiftProtobuf.Message conformance is added in an extension below. See the
  // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
  // methods supported on all messages.

  var repeatedFixed32: [UInt32] = []

  var unknownFields = SwiftProtobuf.UnknownStorage()

  init() {}
}

// MARK: - Extension support defined in unittest_lite.proto.

extension ProtobufUnittest_TestAllExtensionsLite {

  /// Singular
  var ProtobufUnittest_optionalInt32ExtensionLite: Int32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_int32_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_int32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_int32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalInt32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_int32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_int32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalInt32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_int32_extension_lite)
  }

  var ProtobufUnittest_optionalInt64ExtensionLite: Int64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_int64_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_int64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_int64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalInt64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_int64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_int64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalInt64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_int64_extension_lite)
  }

  var ProtobufUnittest_optionalUint32ExtensionLite: UInt32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_uint32_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_uint32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_uint32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalUint32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_uint32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_uint32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalUint32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_uint32_extension_lite)
  }

  var ProtobufUnittest_optionalUint64ExtensionLite: UInt64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_uint64_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_uint64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_uint64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalUint64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_uint64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_uint64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalUint64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_uint64_extension_lite)
  }

  var ProtobufUnittest_optionalSint32ExtensionLite: Int32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_sint32_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_sint32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_sint32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalSint32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_sint32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_sint32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalSint32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_sint32_extension_lite)
  }

  var ProtobufUnittest_optionalSint64ExtensionLite: Int64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_sint64_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_sint64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_sint64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalSint64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_sint64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_sint64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalSint64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_sint64_extension_lite)
  }

  var ProtobufUnittest_optionalFixed32ExtensionLite: UInt32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_fixed32_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_fixed32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_fixed32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalFixed32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_fixed32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_fixed32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalFixed32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_fixed32_extension_lite)
  }

  var ProtobufUnittest_optionalFixed64ExtensionLite: UInt64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_fixed64_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_fixed64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_fixed64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalFixed64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_fixed64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_fixed64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalFixed64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_fixed64_extension_lite)
  }

  var ProtobufUnittest_optionalSfixed32ExtensionLite: Int32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_sfixed32_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_sfixed32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_sfixed32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalSfixed32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_sfixed32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_sfixed32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalSfixed32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_sfixed32_extension_lite)
  }

  var ProtobufUnittest_optionalSfixed64ExtensionLite: Int64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_sfixed64_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_sfixed64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_sfixed64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalSfixed64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_sfixed64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_sfixed64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalSfixed64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_sfixed64_extension_lite)
  }

  var ProtobufUnittest_optionalFloatExtensionLite: Float {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_float_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_float_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_float_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalFloatExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_float_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_float_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalFloatExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_float_extension_lite)
  }

  var ProtobufUnittest_optionalDoubleExtensionLite: Double {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_double_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_double_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_double_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalDoubleExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_double_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_double_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalDoubleExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_double_extension_lite)
  }

  var ProtobufUnittest_optionalBoolExtensionLite: Bool {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_bool_extension_lite) ?? false}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_bool_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_bool_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalBoolExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_bool_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_bool_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalBoolExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_bool_extension_lite)
  }

  var ProtobufUnittest_optionalStringExtensionLite: String {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_string_extension_lite) ?? String()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_string_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_string_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalStringExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_string_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_string_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalStringExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_string_extension_lite)
  }

  var ProtobufUnittest_optionalBytesExtensionLite: Data {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_bytes_extension_lite) ?? SwiftProtobuf.Internal.emptyData}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_bytes_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_bytes_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalBytesExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_bytes_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_bytes_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalBytesExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_bytes_extension_lite)
  }

  var ProtobufUnittest_optionalGroupExtensionLite: ProtobufUnittest_OptionalGroup_extension_lite {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_OptionalGroup_extension_lite) ?? ProtobufUnittest_OptionalGroup_extension_lite()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_OptionalGroup_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_OptionalGroup_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalGroupExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_OptionalGroup_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_OptionalGroup_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalGroupExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_OptionalGroup_extension_lite)
  }

  var ProtobufUnittest_optionalNestedMessageExtensionLite: ProtobufUnittest_TestAllTypesLite.NestedMessage {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_nested_message_extension_lite) ?? ProtobufUnittest_TestAllTypesLite.NestedMessage()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_nested_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_nested_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalNestedMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_nested_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_nested_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalNestedMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_nested_message_extension_lite)
  }

  var ProtobufUnittest_optionalForeignMessageExtensionLite: ProtobufUnittest_ForeignMessageLite {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_foreign_message_extension_lite) ?? ProtobufUnittest_ForeignMessageLite()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_foreign_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_foreign_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalForeignMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_foreign_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_foreign_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalForeignMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_foreign_message_extension_lite)
  }

  var ProtobufUnittest_optionalImportMessageExtensionLite: ProtobufUnittestImport_ImportMessageLite {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_import_message_extension_lite) ?? ProtobufUnittestImport_ImportMessageLite()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_import_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_import_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalImportMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_import_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_import_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalImportMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_import_message_extension_lite)
  }

  var ProtobufUnittest_optionalNestedEnumExtensionLite: ProtobufUnittest_TestAllTypesLite.NestedEnum {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_nested_enum_extension_lite) ?? .foo}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_nested_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_nested_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalNestedEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_nested_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_nested_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalNestedEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_nested_enum_extension_lite)
  }

  var ProtobufUnittest_optionalForeignEnumExtensionLite: ProtobufUnittest_ForeignEnumLite {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_foreign_enum_extension_lite) ?? .foreignLiteFoo}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_foreign_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_foreign_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalForeignEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_foreign_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_foreign_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalForeignEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_foreign_enum_extension_lite)
  }

  var ProtobufUnittest_optionalImportEnumExtensionLite: ProtobufUnittestImport_ImportEnumLite {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_import_enum_extension_lite) ?? .importLiteFoo}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_import_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_import_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalImportEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_import_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_import_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalImportEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_import_enum_extension_lite)
  }

  var ProtobufUnittest_optionalStringPieceExtensionLite: String {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_string_piece_extension_lite) ?? String()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_string_piece_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_string_piece_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalStringPieceExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_string_piece_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_string_piece_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalStringPieceExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_string_piece_extension_lite)
  }

  var ProtobufUnittest_optionalCordExtensionLite: String {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_cord_extension_lite) ?? String()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_cord_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_cord_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalCordExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_cord_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_cord_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalCordExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_cord_extension_lite)
  }

  var ProtobufUnittest_optionalPublicImportMessageExtensionLite: ProtobufUnittestImport_PublicImportMessageLite {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_public_import_message_extension_lite) ?? ProtobufUnittestImport_PublicImportMessageLite()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_public_import_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_public_import_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalPublicImportMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_public_import_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_public_import_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalPublicImportMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_public_import_message_extension_lite)
  }

  var ProtobufUnittest_optionalLazyMessageExtensionLite: ProtobufUnittest_TestAllTypesLite.NestedMessage {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_optional_lazy_message_extension_lite) ?? ProtobufUnittest_TestAllTypesLite.NestedMessage()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_optional_lazy_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_optional_lazy_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_optionalLazyMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_optional_lazy_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_optional_lazy_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_optionalLazyMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_optional_lazy_message_extension_lite)
  }

  /// Repeated
  var ProtobufUnittest_repeatedInt32ExtensionLite: [Int32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_int32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_int32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_int32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedInt32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_int32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_int32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedInt32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_int32_extension_lite)
  }

  var ProtobufUnittest_repeatedInt64ExtensionLite: [Int64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_int64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_int64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_int64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedInt64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_int64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_int64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedInt64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_int64_extension_lite)
  }

  var ProtobufUnittest_repeatedUint32ExtensionLite: [UInt32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_uint32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_uint32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_uint32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedUint32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_uint32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_uint32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedUint32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_uint32_extension_lite)
  }

  var ProtobufUnittest_repeatedUint64ExtensionLite: [UInt64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_uint64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_uint64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_uint64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedUint64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_uint64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_uint64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedUint64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_uint64_extension_lite)
  }

  var ProtobufUnittest_repeatedSint32ExtensionLite: [Int32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sint32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sint32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_sint32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedSint32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sint32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_sint32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedSint32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sint32_extension_lite)
  }

  var ProtobufUnittest_repeatedSint64ExtensionLite: [Int64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sint64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sint64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_sint64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedSint64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sint64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_sint64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedSint64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sint64_extension_lite)
  }

  var ProtobufUnittest_repeatedFixed32ExtensionLite: [UInt32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_fixed32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_fixed32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_fixed32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedFixed32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_fixed32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_fixed32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedFixed32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_fixed32_extension_lite)
  }

  var ProtobufUnittest_repeatedFixed64ExtensionLite: [UInt64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_fixed64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_fixed64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_fixed64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedFixed64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_fixed64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_fixed64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedFixed64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_fixed64_extension_lite)
  }

  var ProtobufUnittest_repeatedSfixed32ExtensionLite: [Int32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sfixed32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sfixed32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_sfixed32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedSfixed32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sfixed32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_sfixed32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedSfixed32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sfixed32_extension_lite)
  }

  var ProtobufUnittest_repeatedSfixed64ExtensionLite: [Int64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sfixed64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sfixed64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_sfixed64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedSfixed64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sfixed64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_sfixed64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedSfixed64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_sfixed64_extension_lite)
  }

  var ProtobufUnittest_repeatedFloatExtensionLite: [Float] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_float_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_float_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_float_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedFloatExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_float_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_float_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedFloatExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_float_extension_lite)
  }

  var ProtobufUnittest_repeatedDoubleExtensionLite: [Double] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_double_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_double_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_double_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedDoubleExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_double_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_double_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedDoubleExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_double_extension_lite)
  }

  var ProtobufUnittest_repeatedBoolExtensionLite: [Bool] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_bool_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_bool_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_bool_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedBoolExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_bool_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_bool_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedBoolExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_bool_extension_lite)
  }

  var ProtobufUnittest_repeatedStringExtensionLite: [String] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_string_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_string_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_string_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedStringExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_string_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_string_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedStringExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_string_extension_lite)
  }

  var ProtobufUnittest_repeatedBytesExtensionLite: [Data] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_bytes_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_bytes_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_bytes_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedBytesExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_bytes_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_bytes_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedBytesExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_bytes_extension_lite)
  }

  var ProtobufUnittest_repeatedGroupExtensionLite: [ProtobufUnittest_RepeatedGroup_extension_lite] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_RepeatedGroup_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_RepeatedGroup_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_RepeatedGroup_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedGroupExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_RepeatedGroup_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_RepeatedGroup_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedGroupExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_RepeatedGroup_extension_lite)
  }

  var ProtobufUnittest_repeatedNestedMessageExtensionLite: [ProtobufUnittest_TestAllTypesLite.NestedMessage] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_nested_message_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_nested_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_nested_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedNestedMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_nested_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_nested_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedNestedMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_nested_message_extension_lite)
  }

  var ProtobufUnittest_repeatedForeignMessageExtensionLite: [ProtobufUnittest_ForeignMessageLite] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_foreign_message_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_foreign_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_foreign_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedForeignMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_foreign_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_foreign_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedForeignMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_foreign_message_extension_lite)
  }

  var ProtobufUnittest_repeatedImportMessageExtensionLite: [ProtobufUnittestImport_ImportMessageLite] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_import_message_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_import_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_import_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedImportMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_import_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_import_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedImportMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_import_message_extension_lite)
  }

  var ProtobufUnittest_repeatedNestedEnumExtensionLite: [ProtobufUnittest_TestAllTypesLite.NestedEnum] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_nested_enum_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_nested_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_nested_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedNestedEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_nested_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_nested_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedNestedEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_nested_enum_extension_lite)
  }

  var ProtobufUnittest_repeatedForeignEnumExtensionLite: [ProtobufUnittest_ForeignEnumLite] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_foreign_enum_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_foreign_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_foreign_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedForeignEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_foreign_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_foreign_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedForeignEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_foreign_enum_extension_lite)
  }

  var ProtobufUnittest_repeatedImportEnumExtensionLite: [ProtobufUnittestImport_ImportEnumLite] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_import_enum_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_import_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_import_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedImportEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_import_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_import_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedImportEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_import_enum_extension_lite)
  }

  var ProtobufUnittest_repeatedStringPieceExtensionLite: [String] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_string_piece_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_string_piece_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_string_piece_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedStringPieceExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_string_piece_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_string_piece_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedStringPieceExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_string_piece_extension_lite)
  }

  var ProtobufUnittest_repeatedCordExtensionLite: [String] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_cord_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_cord_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_cord_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedCordExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_cord_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_cord_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedCordExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_cord_extension_lite)
  }

  var ProtobufUnittest_repeatedLazyMessageExtensionLite: [ProtobufUnittest_TestAllTypesLite.NestedMessage] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_repeated_lazy_message_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_repeated_lazy_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_repeated_lazy_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_repeatedLazyMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_repeated_lazy_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_repeated_lazy_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_repeatedLazyMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_repeated_lazy_message_extension_lite)
  }

  /// Singular with defaults
  var ProtobufUnittest_defaultInt32ExtensionLite: Int32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_int32_extension_lite) ?? 41}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_int32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_int32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultInt32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_int32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_int32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultInt32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_int32_extension_lite)
  }

  var ProtobufUnittest_defaultInt64ExtensionLite: Int64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_int64_extension_lite) ?? 42}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_int64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_int64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultInt64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_int64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_int64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultInt64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_int64_extension_lite)
  }

  var ProtobufUnittest_defaultUint32ExtensionLite: UInt32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_uint32_extension_lite) ?? 43}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_uint32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_uint32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultUint32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_uint32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_uint32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultUint32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_uint32_extension_lite)
  }

  var ProtobufUnittest_defaultUint64ExtensionLite: UInt64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_uint64_extension_lite) ?? 44}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_uint64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_uint64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultUint64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_uint64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_uint64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultUint64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_uint64_extension_lite)
  }

  var ProtobufUnittest_defaultSint32ExtensionLite: Int32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_sint32_extension_lite) ?? -45}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_sint32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_sint32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultSint32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_sint32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_sint32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultSint32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_sint32_extension_lite)
  }

  var ProtobufUnittest_defaultSint64ExtensionLite: Int64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_sint64_extension_lite) ?? 46}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_sint64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_sint64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultSint64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_sint64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_sint64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultSint64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_sint64_extension_lite)
  }

  var ProtobufUnittest_defaultFixed32ExtensionLite: UInt32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_fixed32_extension_lite) ?? 47}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_fixed32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_fixed32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultFixed32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_fixed32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_fixed32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultFixed32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_fixed32_extension_lite)
  }

  var ProtobufUnittest_defaultFixed64ExtensionLite: UInt64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_fixed64_extension_lite) ?? 48}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_fixed64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_fixed64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultFixed64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_fixed64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_fixed64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultFixed64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_fixed64_extension_lite)
  }

  var ProtobufUnittest_defaultSfixed32ExtensionLite: Int32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_sfixed32_extension_lite) ?? 49}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_sfixed32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_sfixed32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultSfixed32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_sfixed32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_sfixed32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultSfixed32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_sfixed32_extension_lite)
  }

  var ProtobufUnittest_defaultSfixed64ExtensionLite: Int64 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_sfixed64_extension_lite) ?? -50}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_sfixed64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_sfixed64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultSfixed64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_sfixed64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_sfixed64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultSfixed64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_sfixed64_extension_lite)
  }

  var ProtobufUnittest_defaultFloatExtensionLite: Float {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_float_extension_lite) ?? 51.5}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_float_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_float_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultFloatExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_float_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_float_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultFloatExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_float_extension_lite)
  }

  var ProtobufUnittest_defaultDoubleExtensionLite: Double {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_double_extension_lite) ?? 52000}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_double_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_double_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultDoubleExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_double_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_double_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultDoubleExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_double_extension_lite)
  }

  var ProtobufUnittest_defaultBoolExtensionLite: Bool {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_bool_extension_lite) ?? true}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_bool_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_bool_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultBoolExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_bool_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_bool_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultBoolExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_bool_extension_lite)
  }

  var ProtobufUnittest_defaultStringExtensionLite: String {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_string_extension_lite) ?? "hello"}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_string_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_string_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultStringExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_string_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_string_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultStringExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_string_extension_lite)
  }

  var ProtobufUnittest_defaultBytesExtensionLite: Data {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_bytes_extension_lite) ?? Data([119, 111, 114, 108, 100])}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_bytes_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_bytes_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultBytesExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_bytes_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_bytes_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultBytesExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_bytes_extension_lite)
  }

  var ProtobufUnittest_defaultNestedEnumExtensionLite: ProtobufUnittest_TestAllTypesLite.NestedEnum {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_nested_enum_extension_lite) ?? .bar}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_nested_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_nested_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultNestedEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_nested_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_nested_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultNestedEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_nested_enum_extension_lite)
  }

  var ProtobufUnittest_defaultForeignEnumExtensionLite: ProtobufUnittest_ForeignEnumLite {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_foreign_enum_extension_lite) ?? .foreignLiteBar}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_foreign_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_foreign_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultForeignEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_foreign_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_foreign_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultForeignEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_foreign_enum_extension_lite)
  }

  var ProtobufUnittest_defaultImportEnumExtensionLite: ProtobufUnittestImport_ImportEnumLite {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_import_enum_extension_lite) ?? .importLiteBar}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_import_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_import_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultImportEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_import_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_import_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultImportEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_import_enum_extension_lite)
  }

  var ProtobufUnittest_defaultStringPieceExtensionLite: String {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_string_piece_extension_lite) ?? "abc"}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_string_piece_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_string_piece_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultStringPieceExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_string_piece_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_string_piece_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultStringPieceExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_string_piece_extension_lite)
  }

  var ProtobufUnittest_defaultCordExtensionLite: String {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_default_cord_extension_lite) ?? "123"}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_default_cord_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_default_cord_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_defaultCordExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_default_cord_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_default_cord_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_defaultCordExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_default_cord_extension_lite)
  }

  /// For oneof test
  var ProtobufUnittest_oneofUint32ExtensionLite: UInt32 {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_oneof_uint32_extension_lite) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_oneof_uint32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_oneof_uint32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_oneofUint32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_oneof_uint32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_oneof_uint32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_oneofUint32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_oneof_uint32_extension_lite)
  }

  var ProtobufUnittest_oneofNestedMessageExtensionLite: ProtobufUnittest_TestAllTypesLite.NestedMessage {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_oneof_nested_message_extension_lite) ?? ProtobufUnittest_TestAllTypesLite.NestedMessage()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_oneof_nested_message_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_oneof_nested_message_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_oneofNestedMessageExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_oneof_nested_message_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_oneof_nested_message_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_oneofNestedMessageExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_oneof_nested_message_extension_lite)
  }

  var ProtobufUnittest_oneofStringExtensionLite: String {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_oneof_string_extension_lite) ?? String()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_oneof_string_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_oneof_string_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_oneofStringExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_oneof_string_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_oneof_string_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_oneofStringExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_oneof_string_extension_lite)
  }

  var ProtobufUnittest_oneofBytesExtensionLite: Data {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_oneof_bytes_extension_lite) ?? SwiftProtobuf.Internal.emptyData}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_oneof_bytes_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_oneof_bytes_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_oneofBytesExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_oneof_bytes_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_oneof_bytes_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_oneofBytesExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_oneof_bytes_extension_lite)
  }

  var ProtobufUnittest_TestNestedExtensionLite_nestedExtension: Int32 {
    get {return getExtensionValue(ext: ProtobufUnittest_TestNestedExtensionLite.Extensions.nested_extension) ?? 0}
    set {setExtensionValue(ext: ProtobufUnittest_TestNestedExtensionLite.Extensions.nested_extension, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_TestNestedExtensionLite.Extensions.nested_extension`
  /// has been explicitly set.
  var hasProtobufUnittest_TestNestedExtensionLite_nestedExtension: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_TestNestedExtensionLite.Extensions.nested_extension)
  }
  /// Clears the value of extension `ProtobufUnittest_TestNestedExtensionLite.Extensions.nested_extension`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_TestNestedExtensionLite_nestedExtension() {
    clearExtensionValue(ext: ProtobufUnittest_TestNestedExtensionLite.Extensions.nested_extension)
  }
}

extension ProtobufUnittest_TestHugeFieldNumbersLite {

  var ProtobufUnittest_testAllTypesLite: ProtobufUnittest_TestAllTypesLite {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_test_all_types_lite) ?? ProtobufUnittest_TestAllTypesLite()}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_test_all_types_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_test_all_types_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_testAllTypesLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_test_all_types_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_test_all_types_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_testAllTypesLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_test_all_types_lite)
  }
}

extension ProtobufUnittest_TestPackedExtensionsLite {

  var ProtobufUnittest_packedInt32ExtensionLite: [Int32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_int32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_int32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_int32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedInt32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_int32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_int32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedInt32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_int32_extension_lite)
  }

  var ProtobufUnittest_packedInt64ExtensionLite: [Int64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_int64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_int64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_int64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedInt64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_int64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_int64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedInt64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_int64_extension_lite)
  }

  var ProtobufUnittest_packedUint32ExtensionLite: [UInt32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_uint32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_uint32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_uint32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedUint32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_uint32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_uint32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedUint32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_uint32_extension_lite)
  }

  var ProtobufUnittest_packedUint64ExtensionLite: [UInt64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_uint64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_uint64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_uint64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedUint64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_uint64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_uint64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedUint64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_uint64_extension_lite)
  }

  var ProtobufUnittest_packedSint32ExtensionLite: [Int32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_sint32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_sint32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_sint32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedSint32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_sint32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_sint32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedSint32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_sint32_extension_lite)
  }

  var ProtobufUnittest_packedSint64ExtensionLite: [Int64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_sint64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_sint64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_sint64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedSint64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_sint64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_sint64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedSint64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_sint64_extension_lite)
  }

  var ProtobufUnittest_packedFixed32ExtensionLite: [UInt32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_fixed32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_fixed32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_fixed32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedFixed32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_fixed32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_fixed32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedFixed32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_fixed32_extension_lite)
  }

  var ProtobufUnittest_packedFixed64ExtensionLite: [UInt64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_fixed64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_fixed64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_fixed64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedFixed64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_fixed64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_fixed64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedFixed64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_fixed64_extension_lite)
  }

  var ProtobufUnittest_packedSfixed32ExtensionLite: [Int32] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_sfixed32_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_sfixed32_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_sfixed32_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedSfixed32ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_sfixed32_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_sfixed32_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedSfixed32ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_sfixed32_extension_lite)
  }

  var ProtobufUnittest_packedSfixed64ExtensionLite: [Int64] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_sfixed64_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_sfixed64_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_sfixed64_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedSfixed64ExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_sfixed64_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_sfixed64_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedSfixed64ExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_sfixed64_extension_lite)
  }

  var ProtobufUnittest_packedFloatExtensionLite: [Float] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_float_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_float_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_float_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedFloatExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_float_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_float_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedFloatExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_float_extension_lite)
  }

  var ProtobufUnittest_packedDoubleExtensionLite: [Double] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_double_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_double_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_double_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedDoubleExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_double_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_double_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedDoubleExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_double_extension_lite)
  }

  var ProtobufUnittest_packedBoolExtensionLite: [Bool] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_bool_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_bool_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_bool_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedBoolExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_bool_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_bool_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedBoolExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_bool_extension_lite)
  }

  var ProtobufUnittest_packedEnumExtensionLite: [ProtobufUnittest_ForeignEnumLite] {
    get {return getExtensionValue(ext: ProtobufUnittest_Extensions_packed_enum_extension_lite) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_Extensions_packed_enum_extension_lite, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_Extensions_packed_enum_extension_lite`
  /// has been explicitly set.
  var hasProtobufUnittest_packedEnumExtensionLite: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_Extensions_packed_enum_extension_lite)
  }
  /// Clears the value of extension `ProtobufUnittest_Extensions_packed_enum_extension_lite`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_packedEnumExtensionLite() {
    clearExtensionValue(ext: ProtobufUnittest_Extensions_packed_enum_extension_lite)
  }
}

extension ProtobufUnittest_TestParsingMergeLite {

  var ProtobufUnittest_TestParsingMergeLite_optionalExt: ProtobufUnittest_TestAllTypesLite {
    get {return getExtensionValue(ext: ProtobufUnittest_TestParsingMergeLite.Extensions.optional_ext) ?? ProtobufUnittest_TestAllTypesLite()}
    set {setExtensionValue(ext: ProtobufUnittest_TestParsingMergeLite.Extensions.optional_ext, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_TestParsingMergeLite.Extensions.optional_ext`
  /// has been explicitly set.
  var hasProtobufUnittest_TestParsingMergeLite_optionalExt: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_TestParsingMergeLite.Extensions.optional_ext)
  }
  /// Clears the value of extension `ProtobufUnittest_TestParsingMergeLite.Extensions.optional_ext`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_TestParsingMergeLite_optionalExt() {
    clearExtensionValue(ext: ProtobufUnittest_TestParsingMergeLite.Extensions.optional_ext)
  }

  var ProtobufUnittest_TestParsingMergeLite_repeatedExt: [ProtobufUnittest_TestAllTypesLite] {
    get {return getExtensionValue(ext: ProtobufUnittest_TestParsingMergeLite.Extensions.repeated_ext) ?? []}
    set {setExtensionValue(ext: ProtobufUnittest_TestParsingMergeLite.Extensions.repeated_ext, value: newValue)}
  }
  /// Returns true if extension `ProtobufUnittest_TestParsingMergeLite.Extensions.repeated_ext`
  /// has been explicitly set.
  var hasProtobufUnittest_TestParsingMergeLite_repeatedExt: Bool {
    return hasExtensionValue(ext: ProtobufUnittest_TestParsingMergeLite.Extensions.repeated_ext)
  }
  /// Clears the value of extension `ProtobufUnittest_TestParsingMergeLite.Extensions.repeated_ext`.
  /// Subsequent reads from it will return its default value.
  mutating func clearProtobufUnittest_TestParsingMergeLite_repeatedExt() {
    clearExtensionValue(ext: ProtobufUnittest_TestParsingMergeLite.Extensions.repeated_ext)
  }

}

/// A `SwiftProtobuf.SimpleExtensionMap` that includes all of the extensions defined by
/// this .proto file. It can be used any place an `SwiftProtobuf.ExtensionMap` is needed
/// in parsing, or it can be combined with other `SwiftProtobuf.SimpleExtensionMap`s to create
/// a larger `SwiftProtobuf.SimpleExtensionMap`.
let ProtobufUnittest_UnittestLite_Extensions: SwiftProtobuf.SimpleExtensionMap = [
  ProtobufUnittest_Extensions_optional_int32_extension_lite,
  ProtobufUnittest_Extensions_optional_int64_extension_lite,
  ProtobufUnittest_Extensions_optional_uint32_extension_lite,
  ProtobufUnittest_Extensions_optional_uint64_extension_lite,
  ProtobufUnittest_Extensions_optional_sint32_extension_lite,
  ProtobufUnittest_Extensions_optional_sint64_extension_lite,
  ProtobufUnittest_Extensions_optional_fixed32_extension_lite,
  ProtobufUnittest_Extensions_optional_fixed64_extension_lite,
  ProtobufUnittest_Extensions_optional_sfixed32_extension_lite,
  ProtobufUnittest_Extensions_optional_sfixed64_extension_lite,
  ProtobufUnittest_Extensions_optional_float_extension_lite,
  ProtobufUnittest_Extensions_optional_double_extension_lite,
  ProtobufUnittest_Extensions_optional_bool_extension_lite,
  ProtobufUnittest_Extensions_optional_string_extension_lite,
  ProtobufUnittest_Extensions_optional_bytes_extension_lite,
  ProtobufUnittest_Extensions_OptionalGroup_extension_lite,
  ProtobufUnittest_Extensions_optional_nested_message_extension_lite,
  ProtobufUnittest_Extensions_optional_foreign_message_extension_lite,
  ProtobufUnittest_Extensions_optional_import_message_extension_lite,
  ProtobufUnittest_Extensions_optional_nested_enum_extension_lite,
  ProtobufUnittest_Extensions_optional_foreign_enum_extension_lite,
  ProtobufUnittest_Extensions_optional_import_enum_extension_lite,
  ProtobufUnittest_Extensions_optional_string_piece_extension_lite,
  ProtobufUnittest_Extensions_optional_cord_extension_lite,
  ProtobufUnittest_Extensions_optional_public_import_message_extension_lite,
  ProtobufUnittest_Extensions_optional_lazy_message_extension_lite,
  ProtobufUnittest_Extensions_repeated_int32_extension_lite,
  ProtobufUnittest_Extensions_repeated_int64_extension_lite,
  ProtobufUnittest_Extensions_repeated_uint32_extension_lite,
  ProtobufUnittest_Extensions_repeated_uint64_extension_lite,
  ProtobufUnittest_Extensions_repeated_sint32_extension_lite,
  ProtobufUnittest_Extensions_repeated_sint64_extension_lite,
  ProtobufUnittest_Extensions_repeated_fixed32_extension_lite,
  ProtobufUnittest_Extensions_repeated_fixed64_extension_lite,
  ProtobufUnittest_Extensions_repeated_sfixed32_extension_lite,
  ProtobufUnittest_Extensions_repeated_sfixed64_extension_lite,
  ProtobufUnittest_Extensions_repeated_float_extension_lite,
  ProtobufUnittest_Extensions_repeated_double_extension_lite,
  ProtobufUnittest_Extensions_repeated_bool_extension_lite,
  ProtobufUnittest_Extensions_repeated_string_extension_lite,
  ProtobufUnittest_Extensions_repeated_bytes_extension_lite,
  ProtobufUnittest_Extensions_RepeatedGroup_extension_lite,
  ProtobufUnittest_Extensions_repeated_nested_message_extension_lite,
  ProtobufUnittest_Extensions_repeated_foreign_message_extension_lite,
  ProtobufUnittest_Extensions_repeated_import_message_extension_lite,
  ProtobufUnittest_Extensions_repeated_nested_enum_extension_lite,
  ProtobufUnittest_Extensions_repeated_foreign_enum_extension_lite,
  ProtobufUnittest_Extensions_repeated_import_enum_extension_lite,
  ProtobufUnittest_Extensions_repeated_string_piece_extension_lite,
  ProtobufUnittest_Extensions_repeated_cord_extension_lite,
  ProtobufUnittest_Extensions_repeated_lazy_message_extension_lite,
  ProtobufUnittest_Extensions_default_int32_extension_lite,
  ProtobufUnittest_Extensions_default_int64_extension_lite,
  ProtobufUnittest_Extensions_default_uint32_extension_lite,
  ProtobufUnittest_Extensions_default_uint64_extension_lite,
  ProtobufUnittest_Extensions_default_sint32_extension_lite,
  ProtobufUnittest_Extensions_default_sint64_extension_lite,
  ProtobufUnittest_Extensions_default_fixed32_extension_lite,
  ProtobufUnittest_Extensions_default_fixed64_extension_lite,
  ProtobufUnittest_Extensions_default_sfixed32_extension_lite,
  ProtobufUnittest_Extensions_default_sfixed64_extension_lite,
  ProtobufUnittest_Extensions_default_float_extension_lite,
  ProtobufUnittest_Extensions_default_double_extension_lite,
  ProtobufUnittest_Extensions_default_bool_extension_lite,
  ProtobufUnittest_Extensions_default_string_extension_lite,
  ProtobufUnittest_Extensions_default_bytes_extension_lite,
  ProtobufUnittest_Extensions_default_nested_enum_extension_lite,
  ProtobufUnittest_Extensions_default_foreign_enum_extension_lite,
  ProtobufUnittest_Extensions_default_import_enum_extension_lite,
  ProtobufUnittest_Extensions_default_string_piece_extension_lite,
  ProtobufUnittest_Extensions_default_cord_extension_lite,
  ProtobufUnittest_Extensions_oneof_uint32_extension_lite,
  ProtobufUnittest_Extensions_oneof_nested_message_extension_lite,
  ProtobufUnittest_Extensions_oneof_string_extension_lite,
  ProtobufUnittest_Extensions_oneof_bytes_extension_lite,
  ProtobufUnittest_Extensions_packed_int32_extension_lite,
  ProtobufUnittest_Extensions_packed_int64_extension_lite,
  ProtobufUnittest_Extensions_packed_uint32_extension_lite,
  ProtobufUnittest_Extensions_packed_uint64_extension_lite,
  ProtobufUnittest_Extensions_packed_sint32_extension_lite,
  ProtobufUnittest_Extensions_packed_sint64_extension_lite,
  ProtobufUnittest_Extensions_packed_fixed32_extension_lite,
  ProtobufUnittest_Extensions_packed_fixed64_extension_lite,
  ProtobufUnittest_Extensions_packed_sfixed32_extension_lite,
  ProtobufUnittest_Extensions_packed_sfixed64_extension_lite,
  ProtobufUnittest_Extensions_packed_float_extension_lite,
  ProtobufUnittest_Extensions_packed_double_extension_lite,
  ProtobufUnittest_Extensions_packed_bool_extension_lite,
  ProtobufUnittest_Extensions_packed_enum_extension_lite,
  ProtobufUnittest_Extensions_test_all_types_lite,
  ProtobufUnittest_TestNestedExtensionLite.Extensions.nested_extension,
  ProtobufUnittest_TestParsingMergeLite.Extensions.optional_ext,
  ProtobufUnittest_TestParsingMergeLite.Extensions.repeated_ext
]

/// Singular
let ProtobufUnittest_Extensions_optional_int32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 1,
  fieldName: "protobuf_unittest.optional_int32_extension_lite"
)

let ProtobufUnittest_Extensions_optional_int64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufInt64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 2,
  fieldName: "protobuf_unittest.optional_int64_extension_lite"
)

let ProtobufUnittest_Extensions_optional_uint32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufUInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 3,
  fieldName: "protobuf_unittest.optional_uint32_extension_lite"
)

let ProtobufUnittest_Extensions_optional_uint64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufUInt64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 4,
  fieldName: "protobuf_unittest.optional_uint64_extension_lite"
)

let ProtobufUnittest_Extensions_optional_sint32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufSInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 5,
  fieldName: "protobuf_unittest.optional_sint32_extension_lite"
)

let ProtobufUnittest_Extensions_optional_sint64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufSInt64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 6,
  fieldName: "protobuf_unittest.optional_sint64_extension_lite"
)

let ProtobufUnittest_Extensions_optional_fixed32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufFixed32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 7,
  fieldName: "protobuf_unittest.optional_fixed32_extension_lite"
)

let ProtobufUnittest_Extensions_optional_fixed64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufFixed64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 8,
  fieldName: "protobuf_unittest.optional_fixed64_extension_lite"
)

let ProtobufUnittest_Extensions_optional_sfixed32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufSFixed32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 9,
  fieldName: "protobuf_unittest.optional_sfixed32_extension_lite"
)

let ProtobufUnittest_Extensions_optional_sfixed64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufSFixed64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 10,
  fieldName: "protobuf_unittest.optional_sfixed64_extension_lite"
)

let ProtobufUnittest_Extensions_optional_float_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufFloat>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 11,
  fieldName: "protobuf_unittest.optional_float_extension_lite"
)

let ProtobufUnittest_Extensions_optional_double_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufDouble>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 12,
  fieldName: "protobuf_unittest.optional_double_extension_lite"
)

let ProtobufUnittest_Extensions_optional_bool_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufBool>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 13,
  fieldName: "protobuf_unittest.optional_bool_extension_lite"
)

let ProtobufUnittest_Extensions_optional_string_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 14,
  fieldName: "protobuf_unittest.optional_string_extension_lite"
)

let ProtobufUnittest_Extensions_optional_bytes_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufBytes>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 15,
  fieldName: "protobuf_unittest.optional_bytes_extension_lite"
)

let ProtobufUnittest_Extensions_OptionalGroup_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalGroupExtensionField<ProtobufUnittest_OptionalGroup_extension_lite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 16,
  fieldName: "protobuf_unittest.optionalgroup_extension_lite"
)

let ProtobufUnittest_Extensions_optional_nested_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalMessageExtensionField<ProtobufUnittest_TestAllTypesLite.NestedMessage>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 18,
  fieldName: "protobuf_unittest.optional_nested_message_extension_lite"
)

let ProtobufUnittest_Extensions_optional_foreign_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalMessageExtensionField<ProtobufUnittest_ForeignMessageLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 19,
  fieldName: "protobuf_unittest.optional_foreign_message_extension_lite"
)

let ProtobufUnittest_Extensions_optional_import_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalMessageExtensionField<ProtobufUnittestImport_ImportMessageLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 20,
  fieldName: "protobuf_unittest.optional_import_message_extension_lite"
)

let ProtobufUnittest_Extensions_optional_nested_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalEnumExtensionField<ProtobufUnittest_TestAllTypesLite.NestedEnum>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 21,
  fieldName: "protobuf_unittest.optional_nested_enum_extension_lite"
)

let ProtobufUnittest_Extensions_optional_foreign_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalEnumExtensionField<ProtobufUnittest_ForeignEnumLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 22,
  fieldName: "protobuf_unittest.optional_foreign_enum_extension_lite"
)

let ProtobufUnittest_Extensions_optional_import_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalEnumExtensionField<ProtobufUnittestImport_ImportEnumLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 23,
  fieldName: "protobuf_unittest.optional_import_enum_extension_lite"
)

let ProtobufUnittest_Extensions_optional_string_piece_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 24,
  fieldName: "protobuf_unittest.optional_string_piece_extension_lite"
)

let ProtobufUnittest_Extensions_optional_cord_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 25,
  fieldName: "protobuf_unittest.optional_cord_extension_lite"
)

let ProtobufUnittest_Extensions_optional_public_import_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalMessageExtensionField<ProtobufUnittestImport_PublicImportMessageLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 26,
  fieldName: "protobuf_unittest.optional_public_import_message_extension_lite"
)

let ProtobufUnittest_Extensions_optional_lazy_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalMessageExtensionField<ProtobufUnittest_TestAllTypesLite.NestedMessage>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 27,
  fieldName: "protobuf_unittest.optional_lazy_message_extension_lite"
)

/// Repeated
let ProtobufUnittest_Extensions_repeated_int32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 31,
  fieldName: "protobuf_unittest.repeated_int32_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_int64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufInt64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 32,
  fieldName: "protobuf_unittest.repeated_int64_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_uint32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufUInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 33,
  fieldName: "protobuf_unittest.repeated_uint32_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_uint64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufUInt64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 34,
  fieldName: "protobuf_unittest.repeated_uint64_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_sint32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufSInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 35,
  fieldName: "protobuf_unittest.repeated_sint32_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_sint64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufSInt64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 36,
  fieldName: "protobuf_unittest.repeated_sint64_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_fixed32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufFixed32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 37,
  fieldName: "protobuf_unittest.repeated_fixed32_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_fixed64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufFixed64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 38,
  fieldName: "protobuf_unittest.repeated_fixed64_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_sfixed32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufSFixed32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 39,
  fieldName: "protobuf_unittest.repeated_sfixed32_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_sfixed64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufSFixed64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 40,
  fieldName: "protobuf_unittest.repeated_sfixed64_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_float_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufFloat>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 41,
  fieldName: "protobuf_unittest.repeated_float_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_double_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufDouble>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 42,
  fieldName: "protobuf_unittest.repeated_double_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_bool_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufBool>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 43,
  fieldName: "protobuf_unittest.repeated_bool_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_string_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 44,
  fieldName: "protobuf_unittest.repeated_string_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_bytes_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufBytes>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 45,
  fieldName: "protobuf_unittest.repeated_bytes_extension_lite"
)

let ProtobufUnittest_Extensions_RepeatedGroup_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedGroupExtensionField<ProtobufUnittest_RepeatedGroup_extension_lite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 46,
  fieldName: "protobuf_unittest.repeatedgroup_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_nested_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedMessageExtensionField<ProtobufUnittest_TestAllTypesLite.NestedMessage>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 48,
  fieldName: "protobuf_unittest.repeated_nested_message_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_foreign_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedMessageExtensionField<ProtobufUnittest_ForeignMessageLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 49,
  fieldName: "protobuf_unittest.repeated_foreign_message_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_import_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedMessageExtensionField<ProtobufUnittestImport_ImportMessageLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 50,
  fieldName: "protobuf_unittest.repeated_import_message_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_nested_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedEnumExtensionField<ProtobufUnittest_TestAllTypesLite.NestedEnum>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 51,
  fieldName: "protobuf_unittest.repeated_nested_enum_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_foreign_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedEnumExtensionField<ProtobufUnittest_ForeignEnumLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 52,
  fieldName: "protobuf_unittest.repeated_foreign_enum_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_import_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedEnumExtensionField<ProtobufUnittestImport_ImportEnumLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 53,
  fieldName: "protobuf_unittest.repeated_import_enum_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_string_piece_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 54,
  fieldName: "protobuf_unittest.repeated_string_piece_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_cord_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 55,
  fieldName: "protobuf_unittest.repeated_cord_extension_lite"
)

let ProtobufUnittest_Extensions_repeated_lazy_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedMessageExtensionField<ProtobufUnittest_TestAllTypesLite.NestedMessage>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 57,
  fieldName: "protobuf_unittest.repeated_lazy_message_extension_lite"
)

/// Singular with defaults
let ProtobufUnittest_Extensions_default_int32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 61,
  fieldName: "protobuf_unittest.default_int32_extension_lite"
)

let ProtobufUnittest_Extensions_default_int64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufInt64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 62,
  fieldName: "protobuf_unittest.default_int64_extension_lite"
)

let ProtobufUnittest_Extensions_default_uint32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufUInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 63,
  fieldName: "protobuf_unittest.default_uint32_extension_lite"
)

let ProtobufUnittest_Extensions_default_uint64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufUInt64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 64,
  fieldName: "protobuf_unittest.default_uint64_extension_lite"
)

let ProtobufUnittest_Extensions_default_sint32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufSInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 65,
  fieldName: "protobuf_unittest.default_sint32_extension_lite"
)

let ProtobufUnittest_Extensions_default_sint64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufSInt64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 66,
  fieldName: "protobuf_unittest.default_sint64_extension_lite"
)

let ProtobufUnittest_Extensions_default_fixed32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufFixed32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 67,
  fieldName: "protobuf_unittest.default_fixed32_extension_lite"
)

let ProtobufUnittest_Extensions_default_fixed64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufFixed64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 68,
  fieldName: "protobuf_unittest.default_fixed64_extension_lite"
)

let ProtobufUnittest_Extensions_default_sfixed32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufSFixed32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 69,
  fieldName: "protobuf_unittest.default_sfixed32_extension_lite"
)

let ProtobufUnittest_Extensions_default_sfixed64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufSFixed64>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 70,
  fieldName: "protobuf_unittest.default_sfixed64_extension_lite"
)

let ProtobufUnittest_Extensions_default_float_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufFloat>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 71,
  fieldName: "protobuf_unittest.default_float_extension_lite"
)

let ProtobufUnittest_Extensions_default_double_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufDouble>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 72,
  fieldName: "protobuf_unittest.default_double_extension_lite"
)

let ProtobufUnittest_Extensions_default_bool_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufBool>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 73,
  fieldName: "protobuf_unittest.default_bool_extension_lite"
)

let ProtobufUnittest_Extensions_default_string_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 74,
  fieldName: "protobuf_unittest.default_string_extension_lite"
)

let ProtobufUnittest_Extensions_default_bytes_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufBytes>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 75,
  fieldName: "protobuf_unittest.default_bytes_extension_lite"
)

let ProtobufUnittest_Extensions_default_nested_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalEnumExtensionField<ProtobufUnittest_TestAllTypesLite.NestedEnum>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 81,
  fieldName: "protobuf_unittest.default_nested_enum_extension_lite"
)

let ProtobufUnittest_Extensions_default_foreign_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalEnumExtensionField<ProtobufUnittest_ForeignEnumLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 82,
  fieldName: "protobuf_unittest.default_foreign_enum_extension_lite"
)

let ProtobufUnittest_Extensions_default_import_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalEnumExtensionField<ProtobufUnittestImport_ImportEnumLite>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 83,
  fieldName: "protobuf_unittest.default_import_enum_extension_lite"
)

let ProtobufUnittest_Extensions_default_string_piece_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 84,
  fieldName: "protobuf_unittest.default_string_piece_extension_lite"
)

let ProtobufUnittest_Extensions_default_cord_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 85,
  fieldName: "protobuf_unittest.default_cord_extension_lite"
)

/// For oneof test
let ProtobufUnittest_Extensions_oneof_uint32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufUInt32>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 111,
  fieldName: "protobuf_unittest.oneof_uint32_extension_lite"
)

let ProtobufUnittest_Extensions_oneof_nested_message_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalMessageExtensionField<ProtobufUnittest_TestAllTypesLite.NestedMessage>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 112,
  fieldName: "protobuf_unittest.oneof_nested_message_extension_lite"
)

let ProtobufUnittest_Extensions_oneof_string_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufString>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 113,
  fieldName: "protobuf_unittest.oneof_string_extension_lite"
)

let ProtobufUnittest_Extensions_oneof_bytes_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufBytes>, ProtobufUnittest_TestAllExtensionsLite>(
  _protobuf_fieldNumber: 114,
  fieldName: "protobuf_unittest.oneof_bytes_extension_lite"
)

let ProtobufUnittest_Extensions_packed_int32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufInt32>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 90,
  fieldName: "protobuf_unittest.packed_int32_extension_lite"
)

let ProtobufUnittest_Extensions_packed_int64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufInt64>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 91,
  fieldName: "protobuf_unittest.packed_int64_extension_lite"
)

let ProtobufUnittest_Extensions_packed_uint32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufUInt32>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 92,
  fieldName: "protobuf_unittest.packed_uint32_extension_lite"
)

let ProtobufUnittest_Extensions_packed_uint64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufUInt64>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 93,
  fieldName: "protobuf_unittest.packed_uint64_extension_lite"
)

let ProtobufUnittest_Extensions_packed_sint32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufSInt32>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 94,
  fieldName: "protobuf_unittest.packed_sint32_extension_lite"
)

let ProtobufUnittest_Extensions_packed_sint64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufSInt64>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 95,
  fieldName: "protobuf_unittest.packed_sint64_extension_lite"
)

let ProtobufUnittest_Extensions_packed_fixed32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufFixed32>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 96,
  fieldName: "protobuf_unittest.packed_fixed32_extension_lite"
)

let ProtobufUnittest_Extensions_packed_fixed64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufFixed64>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 97,
  fieldName: "protobuf_unittest.packed_fixed64_extension_lite"
)

let ProtobufUnittest_Extensions_packed_sfixed32_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufSFixed32>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 98,
  fieldName: "protobuf_unittest.packed_sfixed32_extension_lite"
)

let ProtobufUnittest_Extensions_packed_sfixed64_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufSFixed64>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 99,
  fieldName: "protobuf_unittest.packed_sfixed64_extension_lite"
)

let ProtobufUnittest_Extensions_packed_float_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufFloat>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 100,
  fieldName: "protobuf_unittest.packed_float_extension_lite"
)

let ProtobufUnittest_Extensions_packed_double_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufDouble>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 101,
  fieldName: "protobuf_unittest.packed_double_extension_lite"
)

let ProtobufUnittest_Extensions_packed_bool_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedExtensionField<SwiftProtobuf.ProtobufBool>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 102,
  fieldName: "protobuf_unittest.packed_bool_extension_lite"
)

let ProtobufUnittest_Extensions_packed_enum_extension_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.PackedEnumExtensionField<ProtobufUnittest_ForeignEnumLite>, ProtobufUnittest_TestPackedExtensionsLite>(
  _protobuf_fieldNumber: 103,
  fieldName: "protobuf_unittest.packed_enum_extension_lite"
)

let ProtobufUnittest_Extensions_test_all_types_lite = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalMessageExtensionField<ProtobufUnittest_TestAllTypesLite>, ProtobufUnittest_TestHugeFieldNumbersLite>(
  _protobuf_fieldNumber: 536860000,
  fieldName: "protobuf_unittest.test_all_types_lite"
)

extension ProtobufUnittest_TestNestedExtensionLite {
  enum Extensions {
    static let nested_extension = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalExtensionField<SwiftProtobuf.ProtobufInt32>, ProtobufUnittest_TestAllExtensionsLite>(
      _protobuf_fieldNumber: 12345,
      fieldName: "protobuf_unittest.TestNestedExtensionLite.nested_extension"
    )
  }
}

extension ProtobufUnittest_TestParsingMergeLite {
  enum Extensions {
    static let optional_ext = SwiftProtobuf.MessageExtension<SwiftProtobuf.OptionalMessageExtensionField<ProtobufUnittest_TestAllTypesLite>, ProtobufUnittest_TestParsingMergeLite>(
      _protobuf_fieldNumber: 1000,
      fieldName: "protobuf_unittest.TestParsingMergeLite.optional_ext"
    )

    static let repeated_ext = SwiftProtobuf.MessageExtension<SwiftProtobuf.RepeatedMessageExtensionField<ProtobufUnittest_TestAllTypesLite>, ProtobufUnittest_TestParsingMergeLite>(
      _protobuf_fieldNumber: 1001,
      fieldName: "protobuf_unittest.TestParsingMergeLite.repeated_ext"
    )
  }
}

// MARK: - Code below here is support for the SwiftProtobuf runtime.

fileprivate let _protobuf_package = "protobuf_unittest"

extension ProtobufUnittest_ForeignEnumLite: SwiftProtobuf._ProtoNameProviding {
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    4: .same(proto: "FOREIGN_LITE_FOO"),
    5: .same(proto: "FOREIGN_LITE_BAR"),
    6: .same(proto: "FOREIGN_LITE_BAZ"),
  ]
}

extension ProtobufUnittest_V1EnumLite: SwiftProtobuf._ProtoNameProviding {
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .same(proto: "V1_FIRST"),
  ]
}

extension ProtobufUnittest_V2EnumLite: SwiftProtobuf._ProtoNameProviding {
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .same(proto: "V2_FIRST"),
    2: .same(proto: "V2_SECOND"),
  ]
}

extension ProtobufUnittest_TestAllTypesLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestAllTypesLite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .standard(proto: "optional_int32"),
    2: .standard(proto: "optional_int64"),
    3: .standard(proto: "optional_uint32"),
    4: .standard(proto: "optional_uint64"),
    5: .standard(proto: "optional_sint32"),
    6: .standard(proto: "optional_sint64"),
    7: .standard(proto: "optional_fixed32"),
    8: .standard(proto: "optional_fixed64"),
    9: .standard(proto: "optional_sfixed32"),
    10: .standard(proto: "optional_sfixed64"),
    11: .standard(proto: "optional_float"),
    12: .standard(proto: "optional_double"),
    13: .standard(proto: "optional_bool"),
    14: .standard(proto: "optional_string"),
    15: .standard(proto: "optional_bytes"),
    16: .unique(proto: "OptionalGroup", json: "optionalgroup"),
    18: .standard(proto: "optional_nested_message"),
    19: .standard(proto: "optional_foreign_message"),
    20: .standard(proto: "optional_import_message"),
    21: .standard(proto: "optional_nested_enum"),
    22: .standard(proto: "optional_foreign_enum"),
    23: .standard(proto: "optional_import_enum"),
    24: .standard(proto: "optional_string_piece"),
    25: .standard(proto: "optional_cord"),
    26: .standard(proto: "optional_public_import_message"),
    27: .standard(proto: "optional_lazy_message"),
    31: .standard(proto: "repeated_int32"),
    32: .standard(proto: "repeated_int64"),
    33: .standard(proto: "repeated_uint32"),
    34: .standard(proto: "repeated_uint64"),
    35: .standard(proto: "repeated_sint32"),
    36: .standard(proto: "repeated_sint64"),
    37: .standard(proto: "repeated_fixed32"),
    38: .standard(proto: "repeated_fixed64"),
    39: .standard(proto: "repeated_sfixed32"),
    40: .standard(proto: "repeated_sfixed64"),
    41: .standard(proto: "repeated_float"),
    42: .standard(proto: "repeated_double"),
    43: .standard(proto: "repeated_bool"),
    44: .standard(proto: "repeated_string"),
    45: .standard(proto: "repeated_bytes"),
    46: .unique(proto: "RepeatedGroup", json: "repeatedgroup"),
    48: .standard(proto: "repeated_nested_message"),
    49: .standard(proto: "repeated_foreign_message"),
    50: .standard(proto: "repeated_import_message"),
    51: .standard(proto: "repeated_nested_enum"),
    52: .standard(proto: "repeated_foreign_enum"),
    53: .standard(proto: "repeated_import_enum"),
    54: .standard(proto: "repeated_string_piece"),
    55: .standard(proto: "repeated_cord"),
    57: .standard(proto: "repeated_lazy_message"),
    61: .standard(proto: "default_int32"),
    62: .standard(proto: "default_int64"),
    63: .standard(proto: "default_uint32"),
    64: .standard(proto: "default_uint64"),
    65: .standard(proto: "default_sint32"),
    66: .standard(proto: "default_sint64"),
    67: .standard(proto: "default_fixed32"),
    68: .standard(proto: "default_fixed64"),
    69: .standard(proto: "default_sfixed32"),
    70: .standard(proto: "default_sfixed64"),
    71: .standard(proto: "default_float"),
    72: .standard(proto: "default_double"),
    73: .standard(proto: "default_bool"),
    74: .standard(proto: "default_string"),
    75: .standard(proto: "default_bytes"),
    81: .standard(proto: "default_nested_enum"),
    82: .standard(proto: "default_foreign_enum"),
    83: .standard(proto: "default_import_enum"),
    84: .standard(proto: "default_string_piece"),
    85: .standard(proto: "default_cord"),
    111: .standard(proto: "oneof_uint32"),
    112: .standard(proto: "oneof_nested_message"),
    113: .standard(proto: "oneof_string"),
    114: .standard(proto: "oneof_bytes"),
    115: .standard(proto: "oneof_lazy_nested_message"),
    116: .standard(proto: "deceptively_named_list"),
  ]

  fileprivate class _StorageClass {
    var _optionalInt32: Int32? = nil
    var _optionalInt64: Int64? = nil
    var _optionalUint32: UInt32? = nil
    var _optionalUint64: UInt64? = nil
    var _optionalSint32: Int32? = nil
    var _optionalSint64: Int64? = nil
    var _optionalFixed32: UInt32? = nil
    var _optionalFixed64: UInt64? = nil
    var _optionalSfixed32: Int32? = nil
    var _optionalSfixed64: Int64? = nil
    var _optionalFloat: Float? = nil
    var _optionalDouble: Double? = nil
    var _optionalBool: Bool? = nil
    var _optionalString: String? = nil
    var _optionalBytes: Data? = nil
    var _optionalGroup: ProtobufUnittest_TestAllTypesLite.OptionalGroup? = nil
    var _optionalNestedMessage: ProtobufUnittest_TestAllTypesLite.NestedMessage? = nil
    var _optionalForeignMessage: ProtobufUnittest_ForeignMessageLite? = nil
    var _optionalImportMessage: ProtobufUnittestImport_ImportMessageLite? = nil
    var _optionalNestedEnum: ProtobufUnittest_TestAllTypesLite.NestedEnum? = nil
    var _optionalForeignEnum: ProtobufUnittest_ForeignEnumLite? = nil
    var _optionalImportEnum: ProtobufUnittestImport_ImportEnumLite? = nil
    var _optionalStringPiece: String? = nil
    var _optionalCord: String? = nil
    var _optionalPublicImportMessage: ProtobufUnittestImport_PublicImportMessageLite? = nil
    var _optionalLazyMessage: ProtobufUnittest_TestAllTypesLite.NestedMessage? = nil
    var _repeatedInt32: [Int32] = []
    var _repeatedInt64: [Int64] = []
    var _repeatedUint32: [UInt32] = []
    var _repeatedUint64: [UInt64] = []
    var _repeatedSint32: [Int32] = []
    var _repeatedSint64: [Int64] = []
    var _repeatedFixed32: [UInt32] = []
    var _repeatedFixed64: [UInt64] = []
    var _repeatedSfixed32: [Int32] = []
    var _repeatedSfixed64: [Int64] = []
    var _repeatedFloat: [Float] = []
    var _repeatedDouble: [Double] = []
    var _repeatedBool: [Bool] = []
    var _repeatedString: [String] = []
    var _repeatedBytes: [Data] = []
    var _repeatedGroup: [ProtobufUnittest_TestAllTypesLite.RepeatedGroup] = []
    var _repeatedNestedMessage: [ProtobufUnittest_TestAllTypesLite.NestedMessage] = []
    var _repeatedForeignMessage: [ProtobufUnittest_ForeignMessageLite] = []
    var _repeatedImportMessage: [ProtobufUnittestImport_ImportMessageLite] = []
    var _repeatedNestedEnum: [ProtobufUnittest_TestAllTypesLite.NestedEnum] = []
    var _repeatedForeignEnum: [ProtobufUnittest_ForeignEnumLite] = []
    var _repeatedImportEnum: [ProtobufUnittestImport_ImportEnumLite] = []
    var _repeatedStringPiece: [String] = []
    var _repeatedCord: [String] = []
    var _repeatedLazyMessage: [ProtobufUnittest_TestAllTypesLite.NestedMessage] = []
    var _defaultInt32: Int32? = nil
    var _defaultInt64: Int64? = nil
    var _defaultUint32: UInt32? = nil
    var _defaultUint64: UInt64? = nil
    var _defaultSint32: Int32? = nil
    var _defaultSint64: Int64? = nil
    var _defaultFixed32: UInt32? = nil
    var _defaultFixed64: UInt64? = nil
    var _defaultSfixed32: Int32? = nil
    var _defaultSfixed64: Int64? = nil
    var _defaultFloat: Float? = nil
    var _defaultDouble: Double? = nil
    var _defaultBool: Bool? = nil
    var _defaultString: String? = nil
    var _defaultBytes: Data? = nil
    var _defaultNestedEnum: ProtobufUnittest_TestAllTypesLite.NestedEnum? = nil
    var _defaultForeignEnum: ProtobufUnittest_ForeignEnumLite? = nil
    var _defaultImportEnum: ProtobufUnittestImport_ImportEnumLite? = nil
    var _defaultStringPiece: String? = nil
    var _defaultCord: String? = nil
    var _oneofField: ProtobufUnittest_TestAllTypesLite.OneOf_OneofField?
    var _deceptivelyNamedList: Int32? = nil

    static let defaultInstance = _StorageClass()

    private init() {}

    init(copying source: _StorageClass) {
      _optionalInt32 = source._optionalInt32
      _optionalInt64 = source._optionalInt64
      _optionalUint32 = source._optionalUint32
      _optionalUint64 = source._optionalUint64
      _optionalSint32 = source._optionalSint32
      _optionalSint64 = source._optionalSint64
      _optionalFixed32 = source._optionalFixed32
      _optionalFixed64 = source._optionalFixed64
      _optionalSfixed32 = source._optionalSfixed32
      _optionalSfixed64 = source._optionalSfixed64
      _optionalFloat = source._optionalFloat
      _optionalDouble = source._optionalDouble
      _optionalBool = source._optionalBool
      _optionalString = source._optionalString
      _optionalBytes = source._optionalBytes
      _optionalGroup = source._optionalGroup
      _optionalNestedMessage = source._optionalNestedMessage
      _optionalForeignMessage = source._optionalForeignMessage
      _optionalImportMessage = source._optionalImportMessage
      _optionalNestedEnum = source._optionalNestedEnum
      _optionalForeignEnum = source._optionalForeignEnum
      _optionalImportEnum = source._optionalImportEnum
      _optionalStringPiece = source._optionalStringPiece
      _optionalCord = source._optionalCord
      _optionalPublicImportMessage = source._optionalPublicImportMessage
      _optionalLazyMessage = source._optionalLazyMessage
      _repeatedInt32 = source._repeatedInt32
      _repeatedInt64 = source._repeatedInt64
      _repeatedUint32 = source._repeatedUint32
      _repeatedUint64 = source._repeatedUint64
      _repeatedSint32 = source._repeatedSint32
      _repeatedSint64 = source._repeatedSint64
      _repeatedFixed32 = source._repeatedFixed32
      _repeatedFixed64 = source._repeatedFixed64
      _repeatedSfixed32 = source._repeatedSfixed32
      _repeatedSfixed64 = source._repeatedSfixed64
      _repeatedFloat = source._repeatedFloat
      _repeatedDouble = source._repeatedDouble
      _repeatedBool = source._repeatedBool
      _repeatedString = source._repeatedString
      _repeatedBytes = source._repeatedBytes
      _repeatedGroup = source._repeatedGroup
      _repeatedNestedMessage = source._repeatedNestedMessage
      _repeatedForeignMessage = source._repeatedForeignMessage
      _repeatedImportMessage = source._repeatedImportMessage
      _repeatedNestedEnum = source._repeatedNestedEnum
      _repeatedForeignEnum = source._repeatedForeignEnum
      _repeatedImportEnum = source._repeatedImportEnum
      _repeatedStringPiece = source._repeatedStringPiece
      _repeatedCord = source._repeatedCord
      _repeatedLazyMessage = source._repeatedLazyMessage
      _defaultInt32 = source._defaultInt32
      _defaultInt64 = source._defaultInt64
      _defaultUint32 = source._defaultUint32
      _defaultUint64 = source._defaultUint64
      _defaultSint32 = source._defaultSint32
      _defaultSint64 = source._defaultSint64
      _defaultFixed32 = source._defaultFixed32
      _defaultFixed64 = source._defaultFixed64
      _defaultSfixed32 = source._defaultSfixed32
      _defaultSfixed64 = source._defaultSfixed64
      _defaultFloat = source._defaultFloat
      _defaultDouble = source._defaultDouble
      _defaultBool = source._defaultBool
      _defaultString = source._defaultString
      _defaultBytes = source._defaultBytes
      _defaultNestedEnum = source._defaultNestedEnum
      _defaultForeignEnum = source._defaultForeignEnum
      _defaultImportEnum = source._defaultImportEnum
      _defaultStringPiece = source._defaultStringPiece
      _defaultCord = source._defaultCord
      _oneofField = source._oneofField
      _deceptivelyNamedList = source._deceptivelyNamedList
    }
  }

  fileprivate mutating func _uniqueStorage() -> _StorageClass {
    if !isKnownUniquelyReferenced(&_storage) {
      _storage = _StorageClass(copying: _storage)
    }
    return _storage
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    _ = _uniqueStorage()
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      while let fieldNumber = try decoder.nextFieldNumber() {
        switch fieldNumber {
        case 1: try decoder.decodeSingularInt32Field(value: &_storage._optionalInt32)
        case 2: try decoder.decodeSingularInt64Field(value: &_storage._optionalInt64)
        case 3: try decoder.decodeSingularUInt32Field(value: &_storage._optionalUint32)
        case 4: try decoder.decodeSingularUInt64Field(value: &_storage._optionalUint64)
        case 5: try decoder.decodeSingularSInt32Field(value: &_storage._optionalSint32)
        case 6: try decoder.decodeSingularSInt64Field(value: &_storage._optionalSint64)
        case 7: try decoder.decodeSingularFixed32Field(value: &_storage._optionalFixed32)
        case 8: try decoder.decodeSingularFixed64Field(value: &_storage._optionalFixed64)
        case 9: try decoder.decodeSingularSFixed32Field(value: &_storage._optionalSfixed32)
        case 10: try decoder.decodeSingularSFixed64Field(value: &_storage._optionalSfixed64)
        case 11: try decoder.decodeSingularFloatField(value: &_storage._optionalFloat)
        case 12: try decoder.decodeSingularDoubleField(value: &_storage._optionalDouble)
        case 13: try decoder.decodeSingularBoolField(value: &_storage._optionalBool)
        case 14: try decoder.decodeSingularStringField(value: &_storage._optionalString)
        case 15: try decoder.decodeSingularBytesField(value: &_storage._optionalBytes)
        case 16: try decoder.decodeSingularGroupField(value: &_storage._optionalGroup)
        case 18: try decoder.decodeSingularMessageField(value: &_storage._optionalNestedMessage)
        case 19: try decoder.decodeSingularMessageField(value: &_storage._optionalForeignMessage)
        case 20: try decoder.decodeSingularMessageField(value: &_storage._optionalImportMessage)
        case 21: try decoder.decodeSingularEnumField(value: &_storage._optionalNestedEnum)
        case 22: try decoder.decodeSingularEnumField(value: &_storage._optionalForeignEnum)
        case 23: try decoder.decodeSingularEnumField(value: &_storage._optionalImportEnum)
        case 24: try decoder.decodeSingularStringField(value: &_storage._optionalStringPiece)
        case 25: try decoder.decodeSingularStringField(value: &_storage._optionalCord)
        case 26: try decoder.decodeSingularMessageField(value: &_storage._optionalPublicImportMessage)
        case 27: try decoder.decodeSingularMessageField(value: &_storage._optionalLazyMessage)
        case 31: try decoder.decodeRepeatedInt32Field(value: &_storage._repeatedInt32)
        case 32: try decoder.decodeRepeatedInt64Field(value: &_storage._repeatedInt64)
        case 33: try decoder.decodeRepeatedUInt32Field(value: &_storage._repeatedUint32)
        case 34: try decoder.decodeRepeatedUInt64Field(value: &_storage._repeatedUint64)
        case 35: try decoder.decodeRepeatedSInt32Field(value: &_storage._repeatedSint32)
        case 36: try decoder.decodeRepeatedSInt64Field(value: &_storage._repeatedSint64)
        case 37: try decoder.decodeRepeatedFixed32Field(value: &_storage._repeatedFixed32)
        case 38: try decoder.decodeRepeatedFixed64Field(value: &_storage._repeatedFixed64)
        case 39: try decoder.decodeRepeatedSFixed32Field(value: &_storage._repeatedSfixed32)
        case 40: try decoder.decodeRepeatedSFixed64Field(value: &_storage._repeatedSfixed64)
        case 41: try decoder.decodeRepeatedFloatField(value: &_storage._repeatedFloat)
        case 42: try decoder.decodeRepeatedDoubleField(value: &_storage._repeatedDouble)
        case 43: try decoder.decodeRepeatedBoolField(value: &_storage._repeatedBool)
        case 44: try decoder.decodeRepeatedStringField(value: &_storage._repeatedString)
        case 45: try decoder.decodeRepeatedBytesField(value: &_storage._repeatedBytes)
        case 46: try decoder.decodeRepeatedGroupField(value: &_storage._repeatedGroup)
        case 48: try decoder.decodeRepeatedMessageField(value: &_storage._repeatedNestedMessage)
        case 49: try decoder.decodeRepeatedMessageField(value: &_storage._repeatedForeignMessage)
        case 50: try decoder.decodeRepeatedMessageField(value: &_storage._repeatedImportMessage)
        case 51: try decoder.decodeRepeatedEnumField(value: &_storage._repeatedNestedEnum)
        case 52: try decoder.decodeRepeatedEnumField(value: &_storage._repeatedForeignEnum)
        case 53: try decoder.decodeRepeatedEnumField(value: &_storage._repeatedImportEnum)
        case 54: try decoder.decodeRepeatedStringField(value: &_storage._repeatedStringPiece)
        case 55: try decoder.decodeRepeatedStringField(value: &_storage._repeatedCord)
        case 57: try decoder.decodeRepeatedMessageField(value: &_storage._repeatedLazyMessage)
        case 61: try decoder.decodeSingularInt32Field(value: &_storage._defaultInt32)
        case 62: try decoder.decodeSingularInt64Field(value: &_storage._defaultInt64)
        case 63: try decoder.decodeSingularUInt32Field(value: &_storage._defaultUint32)
        case 64: try decoder.decodeSingularUInt64Field(value: &_storage._defaultUint64)
        case 65: try decoder.decodeSingularSInt32Field(value: &_storage._defaultSint32)
        case 66: try decoder.decodeSingularSInt64Field(value: &_storage._defaultSint64)
        case 67: try decoder.decodeSingularFixed32Field(value: &_storage._defaultFixed32)
        case 68: try decoder.decodeSingularFixed64Field(value: &_storage._defaultFixed64)
        case 69: try decoder.decodeSingularSFixed32Field(value: &_storage._defaultSfixed32)
        case 70: try decoder.decodeSingularSFixed64Field(value: &_storage._defaultSfixed64)
        case 71: try decoder.decodeSingularFloatField(value: &_storage._defaultFloat)
        case 72: try decoder.decodeSingularDoubleField(value: &_storage._defaultDouble)
        case 73: try decoder.decodeSingularBoolField(value: &_storage._defaultBool)
        case 74: try decoder.decodeSingularStringField(value: &_storage._defaultString)
        case 75: try decoder.decodeSingularBytesField(value: &_storage._defaultBytes)
        case 81: try decoder.decodeSingularEnumField(value: &_storage._defaultNestedEnum)
        case 82: try decoder.decodeSingularEnumField(value: &_storage._defaultForeignEnum)
        case 83: try decoder.decodeSingularEnumField(value: &_storage._defaultImportEnum)
        case 84: try decoder.decodeSingularStringField(value: &_storage._defaultStringPiece)
        case 85: try decoder.decodeSingularStringField(value: &_storage._defaultCord)
        case 111:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: UInt32?
          try decoder.decodeSingularUInt32Field(value: &v)
          if let v = v {_storage._oneofField = .oneofUint32(v)}
        case 112:
          var v: ProtobufUnittest_TestAllTypesLite.NestedMessage?
          if let current = _storage._oneofField {
            try decoder.handleConflictingOneOf()
            if case .oneofNestedMessage(let m) = current {v = m}
          }
          try decoder.decodeSingularMessageField(value: &v)
          if let v = v {_storage._oneofField = .oneofNestedMessage(v)}
        case 113:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: String?
          try decoder.decodeSingularStringField(value: &v)
          if let v = v {_storage._oneofField = .oneofString(v)}
        case 114:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: Data?
          try decoder.decodeSingularBytesField(value: &v)
          if let v = v {_storage._oneofField = .oneofBytes(v)}
        case 115:
          var v: ProtobufUnittest_TestAllTypesLite.NestedMessage?
          if let current = _storage._oneofField {
            try decoder.handleConflictingOneOf()
            if case .oneofLazyNestedMessage(let m) = current {v = m}
          }
          try decoder.decodeSingularMessageField(value: &v)
          if let v = v {_storage._oneofField = .oneofLazyNestedMessage(v)}
        case 116: try decoder.decodeSingularInt32Field(value: &_storage._deceptivelyNamedList)
        default: break
        }
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      if let v = _storage._optionalInt32 {
        try visitor.visitSingularInt32Field(value: v, fieldNumber: 1)
      }
      if let v = _storage._optionalInt64 {
        try visitor.visitSingularInt64Field(value: v, fieldNumber: 2)
      }
      if let v = _storage._optionalUint32 {
        try visitor.visitSingularUInt32Field(value: v, fieldNumber: 3)
      }
      if let v = _storage._optionalUint64 {
        try visitor.visitSingularUInt64Field(value: v, fieldNumber: 4)
      }
      if let v = _storage._optionalSint32 {
        try visitor.visitSingularSInt32Field(value: v, fieldNumber: 5)
      }
      if let v = _storage._optionalSint64 {
        try visitor.visitSingularSInt64Field(value: v, fieldNumber: 6)
      }
      if let v = _storage._optionalFixed32 {
        try visitor.visitSingularFixed32Field(value: v, fieldNumber: 7)
      }
      if let v = _storage._optionalFixed64 {
        try visitor.visitSingularFixed64Field(value: v, fieldNumber: 8)
      }
      if let v = _storage._optionalSfixed32 {
        try visitor.visitSingularSFixed32Field(value: v, fieldNumber: 9)
      }
      if let v = _storage._optionalSfixed64 {
        try visitor.visitSingularSFixed64Field(value: v, fieldNumber: 10)
      }
      if let v = _storage._optionalFloat {
        try visitor.visitSingularFloatField(value: v, fieldNumber: 11)
      }
      if let v = _storage._optionalDouble {
        try visitor.visitSingularDoubleField(value: v, fieldNumber: 12)
      }
      if let v = _storage._optionalBool {
        try visitor.visitSingularBoolField(value: v, fieldNumber: 13)
      }
      if let v = _storage._optionalString {
        try visitor.visitSingularStringField(value: v, fieldNumber: 14)
      }
      if let v = _storage._optionalBytes {
        try visitor.visitSingularBytesField(value: v, fieldNumber: 15)
      }
      if let v = _storage._optionalGroup {
        try visitor.visitSingularGroupField(value: v, fieldNumber: 16)
      }
      if let v = _storage._optionalNestedMessage {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 18)
      }
      if let v = _storage._optionalForeignMessage {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 19)
      }
      if let v = _storage._optionalImportMessage {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 20)
      }
      if let v = _storage._optionalNestedEnum {
        try visitor.visitSingularEnumField(value: v, fieldNumber: 21)
      }
      if let v = _storage._optionalForeignEnum {
        try visitor.visitSingularEnumField(value: v, fieldNumber: 22)
      }
      if let v = _storage._optionalImportEnum {
        try visitor.visitSingularEnumField(value: v, fieldNumber: 23)
      }
      if let v = _storage._optionalStringPiece {
        try visitor.visitSingularStringField(value: v, fieldNumber: 24)
      }
      if let v = _storage._optionalCord {
        try visitor.visitSingularStringField(value: v, fieldNumber: 25)
      }
      if let v = _storage._optionalPublicImportMessage {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 26)
      }
      if let v = _storage._optionalLazyMessage {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 27)
      }
      if !_storage._repeatedInt32.isEmpty {
        try visitor.visitRepeatedInt32Field(value: _storage._repeatedInt32, fieldNumber: 31)
      }
      if !_storage._repeatedInt64.isEmpty {
        try visitor.visitRepeatedInt64Field(value: _storage._repeatedInt64, fieldNumber: 32)
      }
      if !_storage._repeatedUint32.isEmpty {
        try visitor.visitRepeatedUInt32Field(value: _storage._repeatedUint32, fieldNumber: 33)
      }
      if !_storage._repeatedUint64.isEmpty {
        try visitor.visitRepeatedUInt64Field(value: _storage._repeatedUint64, fieldNumber: 34)
      }
      if !_storage._repeatedSint32.isEmpty {
        try visitor.visitRepeatedSInt32Field(value: _storage._repeatedSint32, fieldNumber: 35)
      }
      if !_storage._repeatedSint64.isEmpty {
        try visitor.visitRepeatedSInt64Field(value: _storage._repeatedSint64, fieldNumber: 36)
      }
      if !_storage._repeatedFixed32.isEmpty {
        try visitor.visitRepeatedFixed32Field(value: _storage._repeatedFixed32, fieldNumber: 37)
      }
      if !_storage._repeatedFixed64.isEmpty {
        try visitor.visitRepeatedFixed64Field(value: _storage._repeatedFixed64, fieldNumber: 38)
      }
      if !_storage._repeatedSfixed32.isEmpty {
        try visitor.visitRepeatedSFixed32Field(value: _storage._repeatedSfixed32, fieldNumber: 39)
      }
      if !_storage._repeatedSfixed64.isEmpty {
        try visitor.visitRepeatedSFixed64Field(value: _storage._repeatedSfixed64, fieldNumber: 40)
      }
      if !_storage._repeatedFloat.isEmpty {
        try visitor.visitRepeatedFloatField(value: _storage._repeatedFloat, fieldNumber: 41)
      }
      if !_storage._repeatedDouble.isEmpty {
        try visitor.visitRepeatedDoubleField(value: _storage._repeatedDouble, fieldNumber: 42)
      }
      if !_storage._repeatedBool.isEmpty {
        try visitor.visitRepeatedBoolField(value: _storage._repeatedBool, fieldNumber: 43)
      }
      if !_storage._repeatedString.isEmpty {
        try visitor.visitRepeatedStringField(value: _storage._repeatedString, fieldNumber: 44)
      }
      if !_storage._repeatedBytes.isEmpty {
        try visitor.visitRepeatedBytesField(value: _storage._repeatedBytes, fieldNumber: 45)
      }
      if !_storage._repeatedGroup.isEmpty {
        try visitor.visitRepeatedGroupField(value: _storage._repeatedGroup, fieldNumber: 46)
      }
      if !_storage._repeatedNestedMessage.isEmpty {
        try visitor.visitRepeatedMessageField(value: _storage._repeatedNestedMessage, fieldNumber: 48)
      }
      if !_storage._repeatedForeignMessage.isEmpty {
        try visitor.visitRepeatedMessageField(value: _storage._repeatedForeignMessage, fieldNumber: 49)
      }
      if !_storage._repeatedImportMessage.isEmpty {
        try visitor.visitRepeatedMessageField(value: _storage._repeatedImportMessage, fieldNumber: 50)
      }
      if !_storage._repeatedNestedEnum.isEmpty {
        try visitor.visitRepeatedEnumField(value: _storage._repeatedNestedEnum, fieldNumber: 51)
      }
      if !_storage._repeatedForeignEnum.isEmpty {
        try visitor.visitRepeatedEnumField(value: _storage._repeatedForeignEnum, fieldNumber: 52)
      }
      if !_storage._repeatedImportEnum.isEmpty {
        try visitor.visitRepeatedEnumField(value: _storage._repeatedImportEnum, fieldNumber: 53)
      }
      if !_storage._repeatedStringPiece.isEmpty {
        try visitor.visitRepeatedStringField(value: _storage._repeatedStringPiece, fieldNumber: 54)
      }
      if !_storage._repeatedCord.isEmpty {
        try visitor.visitRepeatedStringField(value: _storage._repeatedCord, fieldNumber: 55)
      }
      if !_storage._repeatedLazyMessage.isEmpty {
        try visitor.visitRepeatedMessageField(value: _storage._repeatedLazyMessage, fieldNumber: 57)
      }
      if let v = _storage._defaultInt32 {
        try visitor.visitSingularInt32Field(value: v, fieldNumber: 61)
      }
      if let v = _storage._defaultInt64 {
        try visitor.visitSingularInt64Field(value: v, fieldNumber: 62)
      }
      if let v = _storage._defaultUint32 {
        try visitor.visitSingularUInt32Field(value: v, fieldNumber: 63)
      }
      if let v = _storage._defaultUint64 {
        try visitor.visitSingularUInt64Field(value: v, fieldNumber: 64)
      }
      if let v = _storage._defaultSint32 {
        try visitor.visitSingularSInt32Field(value: v, fieldNumber: 65)
      }
      if let v = _storage._defaultSint64 {
        try visitor.visitSingularSInt64Field(value: v, fieldNumber: 66)
      }
      if let v = _storage._defaultFixed32 {
        try visitor.visitSingularFixed32Field(value: v, fieldNumber: 67)
      }
      if let v = _storage._defaultFixed64 {
        try visitor.visitSingularFixed64Field(value: v, fieldNumber: 68)
      }
      if let v = _storage._defaultSfixed32 {
        try visitor.visitSingularSFixed32Field(value: v, fieldNumber: 69)
      }
      if let v = _storage._defaultSfixed64 {
        try visitor.visitSingularSFixed64Field(value: v, fieldNumber: 70)
      }
      if let v = _storage._defaultFloat {
        try visitor.visitSingularFloatField(value: v, fieldNumber: 71)
      }
      if let v = _storage._defaultDouble {
        try visitor.visitSingularDoubleField(value: v, fieldNumber: 72)
      }
      if let v = _storage._defaultBool {
        try visitor.visitSingularBoolField(value: v, fieldNumber: 73)
      }
      if let v = _storage._defaultString {
        try visitor.visitSingularStringField(value: v, fieldNumber: 74)
      }
      if let v = _storage._defaultBytes {
        try visitor.visitSingularBytesField(value: v, fieldNumber: 75)
      }
      if let v = _storage._defaultNestedEnum {
        try visitor.visitSingularEnumField(value: v, fieldNumber: 81)
      }
      if let v = _storage._defaultForeignEnum {
        try visitor.visitSingularEnumField(value: v, fieldNumber: 82)
      }
      if let v = _storage._defaultImportEnum {
        try visitor.visitSingularEnumField(value: v, fieldNumber: 83)
      }
      if let v = _storage._defaultStringPiece {
        try visitor.visitSingularStringField(value: v, fieldNumber: 84)
      }
      if let v = _storage._defaultCord {
        try visitor.visitSingularStringField(value: v, fieldNumber: 85)
      }
      switch _storage._oneofField {
      case .oneofUint32(let v)?:
        try visitor.visitSingularUInt32Field(value: v, fieldNumber: 111)
      case .oneofNestedMessage(let v)?:
        try visitor.visitSingularMessageField(value: v, fieldNumber: 112)
      case .oneofString(let v)?:
        try visitor.visitSingularStringField(value: v, fieldNumber: 113)
      case .oneofBytes(let v)?:
        try visitor.visitSingularBytesField(value: v, fieldNumber: 114)
      case .oneofLazyNestedMessage(let v)?:
        try visitor.visitSingularMessageField(value: v, fieldNumber: 115)
      case nil: break
      }
      if let v = _storage._deceptivelyNamedList {
        try visitor.visitSingularInt32Field(value: v, fieldNumber: 116)
      }
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestAllTypesLite, rhs: ProtobufUnittest_TestAllTypesLite) -> Bool {
    if lhs._storage !== rhs._storage {
      let storagesAreEqual: Bool = withExtendedLifetime((lhs._storage, rhs._storage)) { (_args: (_StorageClass, _StorageClass)) in
        let _storage = _args.0
        let rhs_storage = _args.1
        if _storage._optionalInt32 != rhs_storage._optionalInt32 {return false}
        if _storage._optionalInt64 != rhs_storage._optionalInt64 {return false}
        if _storage._optionalUint32 != rhs_storage._optionalUint32 {return false}
        if _storage._optionalUint64 != rhs_storage._optionalUint64 {return false}
        if _storage._optionalSint32 != rhs_storage._optionalSint32 {return false}
        if _storage._optionalSint64 != rhs_storage._optionalSint64 {return false}
        if _storage._optionalFixed32 != rhs_storage._optionalFixed32 {return false}
        if _storage._optionalFixed64 != rhs_storage._optionalFixed64 {return false}
        if _storage._optionalSfixed32 != rhs_storage._optionalSfixed32 {return false}
        if _storage._optionalSfixed64 != rhs_storage._optionalSfixed64 {return false}
        if _storage._optionalFloat != rhs_storage._optionalFloat {return false}
        if _storage._optionalDouble != rhs_storage._optionalDouble {return false}
        if _storage._optionalBool != rhs_storage._optionalBool {return false}
        if _storage._optionalString != rhs_storage._optionalString {return false}
        if _storage._optionalBytes != rhs_storage._optionalBytes {return false}
        if _storage._optionalGroup != rhs_storage._optionalGroup {return false}
        if _storage._optionalNestedMessage != rhs_storage._optionalNestedMessage {return false}
        if _storage._optionalForeignMessage != rhs_storage._optionalForeignMessage {return false}
        if _storage._optionalImportMessage != rhs_storage._optionalImportMessage {return false}
        if _storage._optionalNestedEnum != rhs_storage._optionalNestedEnum {return false}
        if _storage._optionalForeignEnum != rhs_storage._optionalForeignEnum {return false}
        if _storage._optionalImportEnum != rhs_storage._optionalImportEnum {return false}
        if _storage._optionalStringPiece != rhs_storage._optionalStringPiece {return false}
        if _storage._optionalCord != rhs_storage._optionalCord {return false}
        if _storage._optionalPublicImportMessage != rhs_storage._optionalPublicImportMessage {return false}
        if _storage._optionalLazyMessage != rhs_storage._optionalLazyMessage {return false}
        if _storage._repeatedInt32 != rhs_storage._repeatedInt32 {return false}
        if _storage._repeatedInt64 != rhs_storage._repeatedInt64 {return false}
        if _storage._repeatedUint32 != rhs_storage._repeatedUint32 {return false}
        if _storage._repeatedUint64 != rhs_storage._repeatedUint64 {return false}
        if _storage._repeatedSint32 != rhs_storage._repeatedSint32 {return false}
        if _storage._repeatedSint64 != rhs_storage._repeatedSint64 {return false}
        if _storage._repeatedFixed32 != rhs_storage._repeatedFixed32 {return false}
        if _storage._repeatedFixed64 != rhs_storage._repeatedFixed64 {return false}
        if _storage._repeatedSfixed32 != rhs_storage._repeatedSfixed32 {return false}
        if _storage._repeatedSfixed64 != rhs_storage._repeatedSfixed64 {return false}
        if _storage._repeatedFloat != rhs_storage._repeatedFloat {return false}
        if _storage._repeatedDouble != rhs_storage._repeatedDouble {return false}
        if _storage._repeatedBool != rhs_storage._repeatedBool {return false}
        if _storage._repeatedString != rhs_storage._repeatedString {return false}
        if _storage._repeatedBytes != rhs_storage._repeatedBytes {return false}
        if _storage._repeatedGroup != rhs_storage._repeatedGroup {return false}
        if _storage._repeatedNestedMessage != rhs_storage._repeatedNestedMessage {return false}
        if _storage._repeatedForeignMessage != rhs_storage._repeatedForeignMessage {return false}
        if _storage._repeatedImportMessage != rhs_storage._repeatedImportMessage {return false}
        if _storage._repeatedNestedEnum != rhs_storage._repeatedNestedEnum {return false}
        if _storage._repeatedForeignEnum != rhs_storage._repeatedForeignEnum {return false}
        if _storage._repeatedImportEnum != rhs_storage._repeatedImportEnum {return false}
        if _storage._repeatedStringPiece != rhs_storage._repeatedStringPiece {return false}
        if _storage._repeatedCord != rhs_storage._repeatedCord {return false}
        if _storage._repeatedLazyMessage != rhs_storage._repeatedLazyMessage {return false}
        if _storage._defaultInt32 != rhs_storage._defaultInt32 {return false}
        if _storage._defaultInt64 != rhs_storage._defaultInt64 {return false}
        if _storage._defaultUint32 != rhs_storage._defaultUint32 {return false}
        if _storage._defaultUint64 != rhs_storage._defaultUint64 {return false}
        if _storage._defaultSint32 != rhs_storage._defaultSint32 {return false}
        if _storage._defaultSint64 != rhs_storage._defaultSint64 {return false}
        if _storage._defaultFixed32 != rhs_storage._defaultFixed32 {return false}
        if _storage._defaultFixed64 != rhs_storage._defaultFixed64 {return false}
        if _storage._defaultSfixed32 != rhs_storage._defaultSfixed32 {return false}
        if _storage._defaultSfixed64 != rhs_storage._defaultSfixed64 {return false}
        if _storage._defaultFloat != rhs_storage._defaultFloat {return false}
        if _storage._defaultDouble != rhs_storage._defaultDouble {return false}
        if _storage._defaultBool != rhs_storage._defaultBool {return false}
        if _storage._defaultString != rhs_storage._defaultString {return false}
        if _storage._defaultBytes != rhs_storage._defaultBytes {return false}
        if _storage._defaultNestedEnum != rhs_storage._defaultNestedEnum {return false}
        if _storage._defaultForeignEnum != rhs_storage._defaultForeignEnum {return false}
        if _storage._defaultImportEnum != rhs_storage._defaultImportEnum {return false}
        if _storage._defaultStringPiece != rhs_storage._defaultStringPiece {return false}
        if _storage._defaultCord != rhs_storage._defaultCord {return false}
        if _storage._oneofField != rhs_storage._oneofField {return false}
        if _storage._deceptivelyNamedList != rhs_storage._deceptivelyNamedList {return false}
        return true
      }
      if !storagesAreEqual {return false}
    }
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestAllTypesLite.NestedEnum: SwiftProtobuf._ProtoNameProviding {
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .same(proto: "FOO"),
    2: .same(proto: "BAR"),
    3: .same(proto: "BAZ"),
  ]
}

extension ProtobufUnittest_TestAllTypesLite.NestedMessage: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = ProtobufUnittest_TestAllTypesLite.protoMessageName + ".NestedMessage"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .same(proto: "bb"),
    2: .same(proto: "cc"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 1: try decoder.decodeSingularInt32Field(value: &self._bb)
      case 2: try decoder.decodeSingularInt64Field(value: &self._cc)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._bb {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 1)
    }
    if let v = self._cc {
      try visitor.visitSingularInt64Field(value: v, fieldNumber: 2)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestAllTypesLite.NestedMessage, rhs: ProtobufUnittest_TestAllTypesLite.NestedMessage) -> Bool {
    if lhs._bb != rhs._bb {return false}
    if lhs._cc != rhs._cc {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestAllTypesLite.OptionalGroup: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = ProtobufUnittest_TestAllTypesLite.protoMessageName + ".OptionalGroup"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    17: .same(proto: "a"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 17: try decoder.decodeSingularInt32Field(value: &self._a)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._a {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 17)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestAllTypesLite.OptionalGroup, rhs: ProtobufUnittest_TestAllTypesLite.OptionalGroup) -> Bool {
    if lhs._a != rhs._a {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestAllTypesLite.RepeatedGroup: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = ProtobufUnittest_TestAllTypesLite.protoMessageName + ".RepeatedGroup"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    47: .same(proto: "a"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 47: try decoder.decodeSingularInt32Field(value: &self._a)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._a {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 47)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestAllTypesLite.RepeatedGroup, rhs: ProtobufUnittest_TestAllTypesLite.RepeatedGroup) -> Bool {
    if lhs._a != rhs._a {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_ForeignMessageLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".ForeignMessageLite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .same(proto: "c"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 1: try decoder.decodeSingularInt32Field(value: &self._c)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._c {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 1)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_ForeignMessageLite, rhs: ProtobufUnittest_ForeignMessageLite) -> Bool {
    if lhs._c != rhs._c {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestPackedTypesLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestPackedTypesLite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    90: .standard(proto: "packed_int32"),
    91: .standard(proto: "packed_int64"),
    92: .standard(proto: "packed_uint32"),
    93: .standard(proto: "packed_uint64"),
    94: .standard(proto: "packed_sint32"),
    95: .standard(proto: "packed_sint64"),
    96: .standard(proto: "packed_fixed32"),
    97: .standard(proto: "packed_fixed64"),
    98: .standard(proto: "packed_sfixed32"),
    99: .standard(proto: "packed_sfixed64"),
    100: .standard(proto: "packed_float"),
    101: .standard(proto: "packed_double"),
    102: .standard(proto: "packed_bool"),
    103: .standard(proto: "packed_enum"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 90: try decoder.decodeRepeatedInt32Field(value: &self.packedInt32)
      case 91: try decoder.decodeRepeatedInt64Field(value: &self.packedInt64)
      case 92: try decoder.decodeRepeatedUInt32Field(value: &self.packedUint32)
      case 93: try decoder.decodeRepeatedUInt64Field(value: &self.packedUint64)
      case 94: try decoder.decodeRepeatedSInt32Field(value: &self.packedSint32)
      case 95: try decoder.decodeRepeatedSInt64Field(value: &self.packedSint64)
      case 96: try decoder.decodeRepeatedFixed32Field(value: &self.packedFixed32)
      case 97: try decoder.decodeRepeatedFixed64Field(value: &self.packedFixed64)
      case 98: try decoder.decodeRepeatedSFixed32Field(value: &self.packedSfixed32)
      case 99: try decoder.decodeRepeatedSFixed64Field(value: &self.packedSfixed64)
      case 100: try decoder.decodeRepeatedFloatField(value: &self.packedFloat)
      case 101: try decoder.decodeRepeatedDoubleField(value: &self.packedDouble)
      case 102: try decoder.decodeRepeatedBoolField(value: &self.packedBool)
      case 103: try decoder.decodeRepeatedEnumField(value: &self.packedEnum)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if !self.packedInt32.isEmpty {
      try visitor.visitPackedInt32Field(value: self.packedInt32, fieldNumber: 90)
    }
    if !self.packedInt64.isEmpty {
      try visitor.visitPackedInt64Field(value: self.packedInt64, fieldNumber: 91)
    }
    if !self.packedUint32.isEmpty {
      try visitor.visitPackedUInt32Field(value: self.packedUint32, fieldNumber: 92)
    }
    if !self.packedUint64.isEmpty {
      try visitor.visitPackedUInt64Field(value: self.packedUint64, fieldNumber: 93)
    }
    if !self.packedSint32.isEmpty {
      try visitor.visitPackedSInt32Field(value: self.packedSint32, fieldNumber: 94)
    }
    if !self.packedSint64.isEmpty {
      try visitor.visitPackedSInt64Field(value: self.packedSint64, fieldNumber: 95)
    }
    if !self.packedFixed32.isEmpty {
      try visitor.visitPackedFixed32Field(value: self.packedFixed32, fieldNumber: 96)
    }
    if !self.packedFixed64.isEmpty {
      try visitor.visitPackedFixed64Field(value: self.packedFixed64, fieldNumber: 97)
    }
    if !self.packedSfixed32.isEmpty {
      try visitor.visitPackedSFixed32Field(value: self.packedSfixed32, fieldNumber: 98)
    }
    if !self.packedSfixed64.isEmpty {
      try visitor.visitPackedSFixed64Field(value: self.packedSfixed64, fieldNumber: 99)
    }
    if !self.packedFloat.isEmpty {
      try visitor.visitPackedFloatField(value: self.packedFloat, fieldNumber: 100)
    }
    if !self.packedDouble.isEmpty {
      try visitor.visitPackedDoubleField(value: self.packedDouble, fieldNumber: 101)
    }
    if !self.packedBool.isEmpty {
      try visitor.visitPackedBoolField(value: self.packedBool, fieldNumber: 102)
    }
    if !self.packedEnum.isEmpty {
      try visitor.visitPackedEnumField(value: self.packedEnum, fieldNumber: 103)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestPackedTypesLite, rhs: ProtobufUnittest_TestPackedTypesLite) -> Bool {
    if lhs.packedInt32 != rhs.packedInt32 {return false}
    if lhs.packedInt64 != rhs.packedInt64 {return false}
    if lhs.packedUint32 != rhs.packedUint32 {return false}
    if lhs.packedUint64 != rhs.packedUint64 {return false}
    if lhs.packedSint32 != rhs.packedSint32 {return false}
    if lhs.packedSint64 != rhs.packedSint64 {return false}
    if lhs.packedFixed32 != rhs.packedFixed32 {return false}
    if lhs.packedFixed64 != rhs.packedFixed64 {return false}
    if lhs.packedSfixed32 != rhs.packedSfixed32 {return false}
    if lhs.packedSfixed64 != rhs.packedSfixed64 {return false}
    if lhs.packedFloat != rhs.packedFloat {return false}
    if lhs.packedDouble != rhs.packedDouble {return false}
    if lhs.packedBool != rhs.packedBool {return false}
    if lhs.packedEnum != rhs.packedEnum {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestAllExtensionsLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestAllExtensionsLite"
  static let _protobuf_nameMap = SwiftProtobuf._NameMap()

  public var isInitialized: Bool {
    if !_protobuf_extensionFieldValues.isInitialized {return false}
    return true
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      if (1 <= fieldNumber && fieldNumber < 536870912) {
        try decoder.decodeExtensionField(values: &_protobuf_extensionFieldValues, messageType: ProtobufUnittest_TestAllExtensionsLite.self, fieldNumber: fieldNumber)
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try visitor.visitExtensionFields(fields: _protobuf_extensionFieldValues, start: 1, end: 536870912)
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestAllExtensionsLite, rhs: ProtobufUnittest_TestAllExtensionsLite) -> Bool {
    if lhs.unknownFields != rhs.unknownFields {return false}
    if lhs._protobuf_extensionFieldValues != rhs._protobuf_extensionFieldValues {return false}
    return true
  }
}

extension ProtobufUnittest_OptionalGroup_extension_lite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".OptionalGroup_extension_lite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    17: .same(proto: "a"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 17: try decoder.decodeSingularInt32Field(value: &self._a)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._a {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 17)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_OptionalGroup_extension_lite, rhs: ProtobufUnittest_OptionalGroup_extension_lite) -> Bool {
    if lhs._a != rhs._a {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_RepeatedGroup_extension_lite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".RepeatedGroup_extension_lite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    47: .same(proto: "a"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 47: try decoder.decodeSingularInt32Field(value: &self._a)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._a {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 47)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_RepeatedGroup_extension_lite, rhs: ProtobufUnittest_RepeatedGroup_extension_lite) -> Bool {
    if lhs._a != rhs._a {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestPackedExtensionsLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestPackedExtensionsLite"
  static let _protobuf_nameMap = SwiftProtobuf._NameMap()

  public var isInitialized: Bool {
    if !_protobuf_extensionFieldValues.isInitialized {return false}
    return true
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      if (1 <= fieldNumber && fieldNumber < 536870912) {
        try decoder.decodeExtensionField(values: &_protobuf_extensionFieldValues, messageType: ProtobufUnittest_TestPackedExtensionsLite.self, fieldNumber: fieldNumber)
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try visitor.visitExtensionFields(fields: _protobuf_extensionFieldValues, start: 1, end: 536870912)
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestPackedExtensionsLite, rhs: ProtobufUnittest_TestPackedExtensionsLite) -> Bool {
    if lhs.unknownFields != rhs.unknownFields {return false}
    if lhs._protobuf_extensionFieldValues != rhs._protobuf_extensionFieldValues {return false}
    return true
  }
}

extension ProtobufUnittest_TestNestedExtensionLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestNestedExtensionLite"
  static let _protobuf_nameMap = SwiftProtobuf._NameMap()

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let _ = try decoder.nextFieldNumber() {
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestNestedExtensionLite, rhs: ProtobufUnittest_TestNestedExtensionLite) -> Bool {
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestDeprecatedLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestDeprecatedLite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .standard(proto: "deprecated_field"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 1: try decoder.decodeSingularInt32Field(value: &self._deprecatedField)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._deprecatedField {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 1)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestDeprecatedLite, rhs: ProtobufUnittest_TestDeprecatedLite) -> Bool {
    if lhs._deprecatedField != rhs._deprecatedField {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestParsingMergeLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestParsingMergeLite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .standard(proto: "required_all_types"),
    2: .standard(proto: "optional_all_types"),
    3: .standard(proto: "repeated_all_types"),
    10: .unique(proto: "OptionalGroup", json: "optionalgroup"),
    20: .unique(proto: "RepeatedGroup", json: "repeatedgroup"),
  ]

  fileprivate class _StorageClass {
    var _requiredAllTypes: ProtobufUnittest_TestAllTypesLite? = nil
    var _optionalAllTypes: ProtobufUnittest_TestAllTypesLite? = nil
    var _repeatedAllTypes: [ProtobufUnittest_TestAllTypesLite] = []
    var _optionalGroup: ProtobufUnittest_TestParsingMergeLite.OptionalGroup? = nil
    var _repeatedGroup: [ProtobufUnittest_TestParsingMergeLite.RepeatedGroup] = []

    static let defaultInstance = _StorageClass()

    private init() {}

    init(copying source: _StorageClass) {
      _requiredAllTypes = source._requiredAllTypes
      _optionalAllTypes = source._optionalAllTypes
      _repeatedAllTypes = source._repeatedAllTypes
      _optionalGroup = source._optionalGroup
      _repeatedGroup = source._repeatedGroup
    }
  }

  fileprivate mutating func _uniqueStorage() -> _StorageClass {
    if !isKnownUniquelyReferenced(&_storage) {
      _storage = _StorageClass(copying: _storage)
    }
    return _storage
  }

  public var isInitialized: Bool {
    if !_protobuf_extensionFieldValues.isInitialized {return false}
    return withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      if _storage._requiredAllTypes == nil {return false}
      return true
    }
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    _ = _uniqueStorage()
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      while let fieldNumber = try decoder.nextFieldNumber() {
        switch fieldNumber {
        case 1: try decoder.decodeSingularMessageField(value: &_storage._requiredAllTypes)
        case 2: try decoder.decodeSingularMessageField(value: &_storage._optionalAllTypes)
        case 3: try decoder.decodeRepeatedMessageField(value: &_storage._repeatedAllTypes)
        case 10: try decoder.decodeSingularGroupField(value: &_storage._optionalGroup)
        case 20: try decoder.decodeRepeatedGroupField(value: &_storage._repeatedGroup)
        case 1000..<536870912:
          try decoder.decodeExtensionField(values: &_protobuf_extensionFieldValues, messageType: ProtobufUnittest_TestParsingMergeLite.self, fieldNumber: fieldNumber)
        default: break
        }
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      if let v = _storage._requiredAllTypes {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 1)
      }
      if let v = _storage._optionalAllTypes {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 2)
      }
      if !_storage._repeatedAllTypes.isEmpty {
        try visitor.visitRepeatedMessageField(value: _storage._repeatedAllTypes, fieldNumber: 3)
      }
      if let v = _storage._optionalGroup {
        try visitor.visitSingularGroupField(value: v, fieldNumber: 10)
      }
      if !_storage._repeatedGroup.isEmpty {
        try visitor.visitRepeatedGroupField(value: _storage._repeatedGroup, fieldNumber: 20)
      }
      try visitor.visitExtensionFields(fields: _protobuf_extensionFieldValues, start: 1000, end: 536870912)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestParsingMergeLite, rhs: ProtobufUnittest_TestParsingMergeLite) -> Bool {
    if lhs._storage !== rhs._storage {
      let storagesAreEqual: Bool = withExtendedLifetime((lhs._storage, rhs._storage)) { (_args: (_StorageClass, _StorageClass)) in
        let _storage = _args.0
        let rhs_storage = _args.1
        if _storage._requiredAllTypes != rhs_storage._requiredAllTypes {return false}
        if _storage._optionalAllTypes != rhs_storage._optionalAllTypes {return false}
        if _storage._repeatedAllTypes != rhs_storage._repeatedAllTypes {return false}
        if _storage._optionalGroup != rhs_storage._optionalGroup {return false}
        if _storage._repeatedGroup != rhs_storage._repeatedGroup {return false}
        return true
      }
      if !storagesAreEqual {return false}
    }
    if lhs.unknownFields != rhs.unknownFields {return false}
    if lhs._protobuf_extensionFieldValues != rhs._protobuf_extensionFieldValues {return false}
    return true
  }
}

extension ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = ProtobufUnittest_TestParsingMergeLite.protoMessageName + ".RepeatedFieldsGenerator"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .same(proto: "field1"),
    2: .same(proto: "field2"),
    3: .same(proto: "field3"),
    10: .unique(proto: "Group1", json: "group1"),
    20: .unique(proto: "Group2", json: "group2"),
    1000: .same(proto: "ext1"),
    1001: .same(proto: "ext2"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 1: try decoder.decodeRepeatedMessageField(value: &self.field1)
      case 2: try decoder.decodeRepeatedMessageField(value: &self.field2)
      case 3: try decoder.decodeRepeatedMessageField(value: &self.field3)
      case 10: try decoder.decodeRepeatedGroupField(value: &self.group1)
      case 20: try decoder.decodeRepeatedGroupField(value: &self.group2)
      case 1000: try decoder.decodeRepeatedMessageField(value: &self.ext1)
      case 1001: try decoder.decodeRepeatedMessageField(value: &self.ext2)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if !self.field1.isEmpty {
      try visitor.visitRepeatedMessageField(value: self.field1, fieldNumber: 1)
    }
    if !self.field2.isEmpty {
      try visitor.visitRepeatedMessageField(value: self.field2, fieldNumber: 2)
    }
    if !self.field3.isEmpty {
      try visitor.visitRepeatedMessageField(value: self.field3, fieldNumber: 3)
    }
    if !self.group1.isEmpty {
      try visitor.visitRepeatedGroupField(value: self.group1, fieldNumber: 10)
    }
    if !self.group2.isEmpty {
      try visitor.visitRepeatedGroupField(value: self.group2, fieldNumber: 20)
    }
    if !self.ext1.isEmpty {
      try visitor.visitRepeatedMessageField(value: self.ext1, fieldNumber: 1000)
    }
    if !self.ext2.isEmpty {
      try visitor.visitRepeatedMessageField(value: self.ext2, fieldNumber: 1001)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator, rhs: ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator) -> Bool {
    if lhs.field1 != rhs.field1 {return false}
    if lhs.field2 != rhs.field2 {return false}
    if lhs.field3 != rhs.field3 {return false}
    if lhs.group1 != rhs.group1 {return false}
    if lhs.group2 != rhs.group2 {return false}
    if lhs.ext1 != rhs.ext1 {return false}
    if lhs.ext2 != rhs.ext2 {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.Group1: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.protoMessageName + ".Group1"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    11: .same(proto: "field1"),
  ]

  fileprivate class _StorageClass {
    var _field1: ProtobufUnittest_TestAllTypesLite? = nil

    static let defaultInstance = _StorageClass()

    private init() {}

    init(copying source: _StorageClass) {
      _field1 = source._field1
    }
  }

  fileprivate mutating func _uniqueStorage() -> _StorageClass {
    if !isKnownUniquelyReferenced(&_storage) {
      _storage = _StorageClass(copying: _storage)
    }
    return _storage
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    _ = _uniqueStorage()
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      while let fieldNumber = try decoder.nextFieldNumber() {
        switch fieldNumber {
        case 11: try decoder.decodeSingularMessageField(value: &_storage._field1)
        default: break
        }
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      if let v = _storage._field1 {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 11)
      }
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.Group1, rhs: ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.Group1) -> Bool {
    if lhs._storage !== rhs._storage {
      let storagesAreEqual: Bool = withExtendedLifetime((lhs._storage, rhs._storage)) { (_args: (_StorageClass, _StorageClass)) in
        let _storage = _args.0
        let rhs_storage = _args.1
        if _storage._field1 != rhs_storage._field1 {return false}
        return true
      }
      if !storagesAreEqual {return false}
    }
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.Group2: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.protoMessageName + ".Group2"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    21: .same(proto: "field1"),
  ]

  fileprivate class _StorageClass {
    var _field1: ProtobufUnittest_TestAllTypesLite? = nil

    static let defaultInstance = _StorageClass()

    private init() {}

    init(copying source: _StorageClass) {
      _field1 = source._field1
    }
  }

  fileprivate mutating func _uniqueStorage() -> _StorageClass {
    if !isKnownUniquelyReferenced(&_storage) {
      _storage = _StorageClass(copying: _storage)
    }
    return _storage
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    _ = _uniqueStorage()
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      while let fieldNumber = try decoder.nextFieldNumber() {
        switch fieldNumber {
        case 21: try decoder.decodeSingularMessageField(value: &_storage._field1)
        default: break
        }
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      if let v = _storage._field1 {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 21)
      }
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.Group2, rhs: ProtobufUnittest_TestParsingMergeLite.RepeatedFieldsGenerator.Group2) -> Bool {
    if lhs._storage !== rhs._storage {
      let storagesAreEqual: Bool = withExtendedLifetime((lhs._storage, rhs._storage)) { (_args: (_StorageClass, _StorageClass)) in
        let _storage = _args.0
        let rhs_storage = _args.1
        if _storage._field1 != rhs_storage._field1 {return false}
        return true
      }
      if !storagesAreEqual {return false}
    }
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestParsingMergeLite.OptionalGroup: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = ProtobufUnittest_TestParsingMergeLite.protoMessageName + ".OptionalGroup"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    11: .standard(proto: "optional_group_all_types"),
  ]

  fileprivate class _StorageClass {
    var _optionalGroupAllTypes: ProtobufUnittest_TestAllTypesLite? = nil

    static let defaultInstance = _StorageClass()

    private init() {}

    init(copying source: _StorageClass) {
      _optionalGroupAllTypes = source._optionalGroupAllTypes
    }
  }

  fileprivate mutating func _uniqueStorage() -> _StorageClass {
    if !isKnownUniquelyReferenced(&_storage) {
      _storage = _StorageClass(copying: _storage)
    }
    return _storage
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    _ = _uniqueStorage()
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      while let fieldNumber = try decoder.nextFieldNumber() {
        switch fieldNumber {
        case 11: try decoder.decodeSingularMessageField(value: &_storage._optionalGroupAllTypes)
        default: break
        }
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      if let v = _storage._optionalGroupAllTypes {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 11)
      }
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestParsingMergeLite.OptionalGroup, rhs: ProtobufUnittest_TestParsingMergeLite.OptionalGroup) -> Bool {
    if lhs._storage !== rhs._storage {
      let storagesAreEqual: Bool = withExtendedLifetime((lhs._storage, rhs._storage)) { (_args: (_StorageClass, _StorageClass)) in
        let _storage = _args.0
        let rhs_storage = _args.1
        if _storage._optionalGroupAllTypes != rhs_storage._optionalGroupAllTypes {return false}
        return true
      }
      if !storagesAreEqual {return false}
    }
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestParsingMergeLite.RepeatedGroup: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = ProtobufUnittest_TestParsingMergeLite.protoMessageName + ".RepeatedGroup"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    21: .standard(proto: "repeated_group_all_types"),
  ]

  fileprivate class _StorageClass {
    var _repeatedGroupAllTypes: ProtobufUnittest_TestAllTypesLite? = nil

    static let defaultInstance = _StorageClass()

    private init() {}

    init(copying source: _StorageClass) {
      _repeatedGroupAllTypes = source._repeatedGroupAllTypes
    }
  }

  fileprivate mutating func _uniqueStorage() -> _StorageClass {
    if !isKnownUniquelyReferenced(&_storage) {
      _storage = _StorageClass(copying: _storage)
    }
    return _storage
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    _ = _uniqueStorage()
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      while let fieldNumber = try decoder.nextFieldNumber() {
        switch fieldNumber {
        case 21: try decoder.decodeSingularMessageField(value: &_storage._repeatedGroupAllTypes)
        default: break
        }
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      if let v = _storage._repeatedGroupAllTypes {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 21)
      }
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestParsingMergeLite.RepeatedGroup, rhs: ProtobufUnittest_TestParsingMergeLite.RepeatedGroup) -> Bool {
    if lhs._storage !== rhs._storage {
      let storagesAreEqual: Bool = withExtendedLifetime((lhs._storage, rhs._storage)) { (_args: (_StorageClass, _StorageClass)) in
        let _storage = _args.0
        let rhs_storage = _args.1
        if _storage._repeatedGroupAllTypes != rhs_storage._repeatedGroupAllTypes {return false}
        return true
      }
      if !storagesAreEqual {return false}
    }
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestEmptyMessageLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestEmptyMessageLite"
  static let _protobuf_nameMap = SwiftProtobuf._NameMap()

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let _ = try decoder.nextFieldNumber() {
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestEmptyMessageLite, rhs: ProtobufUnittest_TestEmptyMessageLite) -> Bool {
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestEmptyMessageWithExtensionsLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestEmptyMessageWithExtensionsLite"
  static let _protobuf_nameMap = SwiftProtobuf._NameMap()

  public var isInitialized: Bool {
    if !_protobuf_extensionFieldValues.isInitialized {return false}
    return true
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      if (1 <= fieldNumber && fieldNumber < 536870912) {
        try decoder.decodeExtensionField(values: &_protobuf_extensionFieldValues, messageType: ProtobufUnittest_TestEmptyMessageWithExtensionsLite.self, fieldNumber: fieldNumber)
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try visitor.visitExtensionFields(fields: _protobuf_extensionFieldValues, start: 1, end: 536870912)
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestEmptyMessageWithExtensionsLite, rhs: ProtobufUnittest_TestEmptyMessageWithExtensionsLite) -> Bool {
    if lhs.unknownFields != rhs.unknownFields {return false}
    if lhs._protobuf_extensionFieldValues != rhs._protobuf_extensionFieldValues {return false}
    return true
  }
}

extension ProtobufUnittest_V1MessageLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".V1MessageLite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .standard(proto: "int_field"),
    2: .standard(proto: "enum_field"),
  ]

  public var isInitialized: Bool {
    if self._intField == nil {return false}
    return true
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 1: try decoder.decodeSingularInt32Field(value: &self._intField)
      case 2: try decoder.decodeSingularEnumField(value: &self._enumField)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._intField {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 1)
    }
    if let v = self._enumField {
      try visitor.visitSingularEnumField(value: v, fieldNumber: 2)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_V1MessageLite, rhs: ProtobufUnittest_V1MessageLite) -> Bool {
    if lhs._intField != rhs._intField {return false}
    if lhs._enumField != rhs._enumField {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_V2MessageLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".V2MessageLite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .standard(proto: "int_field"),
    2: .standard(proto: "enum_field"),
  ]

  public var isInitialized: Bool {
    if self._intField == nil {return false}
    return true
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 1: try decoder.decodeSingularInt32Field(value: &self._intField)
      case 2: try decoder.decodeSingularEnumField(value: &self._enumField)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._intField {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 1)
    }
    if let v = self._enumField {
      try visitor.visitSingularEnumField(value: v, fieldNumber: 2)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_V2MessageLite, rhs: ProtobufUnittest_V2MessageLite) -> Bool {
    if lhs._intField != rhs._intField {return false}
    if lhs._enumField != rhs._enumField {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestHugeFieldNumbersLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestHugeFieldNumbersLite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    536870000: .standard(proto: "optional_int32"),
    536870001: .standard(proto: "fixed_32"),
    536870002: .standard(proto: "repeated_int32"),
    536870003: .standard(proto: "packed_int32"),
    536870004: .standard(proto: "optional_enum"),
    536870005: .standard(proto: "optional_string"),
    536870006: .standard(proto: "optional_bytes"),
    536870007: .standard(proto: "optional_message"),
    536870008: .unique(proto: "OptionalGroup", json: "optionalgroup"),
    536870010: .standard(proto: "string_string_map"),
    536870011: .standard(proto: "oneof_uint32"),
    536870012: .standard(proto: "oneof_test_all_types"),
    536870013: .standard(proto: "oneof_string"),
    536870014: .standard(proto: "oneof_bytes"),
  ]

  fileprivate class _StorageClass {
    var _optionalInt32: Int32? = nil
    var _fixed32: Int32? = nil
    var _repeatedInt32: [Int32] = []
    var _packedInt32: [Int32] = []
    var _optionalEnum: ProtobufUnittest_ForeignEnumLite? = nil
    var _optionalString: String? = nil
    var _optionalBytes: Data? = nil
    var _optionalMessage: ProtobufUnittest_ForeignMessageLite? = nil
    var _optionalGroup: ProtobufUnittest_TestHugeFieldNumbersLite.OptionalGroup? = nil
    var _stringStringMap: Dictionary<String,String> = [:]
    var _oneofField: ProtobufUnittest_TestHugeFieldNumbersLite.OneOf_OneofField?

    static let defaultInstance = _StorageClass()

    private init() {}

    init(copying source: _StorageClass) {
      _optionalInt32 = source._optionalInt32
      _fixed32 = source._fixed32
      _repeatedInt32 = source._repeatedInt32
      _packedInt32 = source._packedInt32
      _optionalEnum = source._optionalEnum
      _optionalString = source._optionalString
      _optionalBytes = source._optionalBytes
      _optionalMessage = source._optionalMessage
      _optionalGroup = source._optionalGroup
      _stringStringMap = source._stringStringMap
      _oneofField = source._oneofField
    }
  }

  fileprivate mutating func _uniqueStorage() -> _StorageClass {
    if !isKnownUniquelyReferenced(&_storage) {
      _storage = _StorageClass(copying: _storage)
    }
    return _storage
  }

  public var isInitialized: Bool {
    if !_protobuf_extensionFieldValues.isInitialized {return false}
    return true
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    _ = _uniqueStorage()
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      while let fieldNumber = try decoder.nextFieldNumber() {
        switch fieldNumber {
        case 536870000: try decoder.decodeSingularInt32Field(value: &_storage._optionalInt32)
        case 536870001: try decoder.decodeSingularInt32Field(value: &_storage._fixed32)
        case 536870002: try decoder.decodeRepeatedInt32Field(value: &_storage._repeatedInt32)
        case 536870003: try decoder.decodeRepeatedInt32Field(value: &_storage._packedInt32)
        case 536870004: try decoder.decodeSingularEnumField(value: &_storage._optionalEnum)
        case 536870005: try decoder.decodeSingularStringField(value: &_storage._optionalString)
        case 536870006: try decoder.decodeSingularBytesField(value: &_storage._optionalBytes)
        case 536870007: try decoder.decodeSingularMessageField(value: &_storage._optionalMessage)
        case 536870008: try decoder.decodeSingularGroupField(value: &_storage._optionalGroup)
        case 536870010: try decoder.decodeMapField(fieldType: SwiftProtobuf._ProtobufMap<SwiftProtobuf.ProtobufString,SwiftProtobuf.ProtobufString>.self, value: &_storage._stringStringMap)
        case 536870011:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: UInt32?
          try decoder.decodeSingularUInt32Field(value: &v)
          if let v = v {_storage._oneofField = .oneofUint32(v)}
        case 536870012:
          var v: ProtobufUnittest_TestAllTypesLite?
          if let current = _storage._oneofField {
            try decoder.handleConflictingOneOf()
            if case .oneofTestAllTypes(let m) = current {v = m}
          }
          try decoder.decodeSingularMessageField(value: &v)
          if let v = v {_storage._oneofField = .oneofTestAllTypes(v)}
        case 536870013:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: String?
          try decoder.decodeSingularStringField(value: &v)
          if let v = v {_storage._oneofField = .oneofString(v)}
        case 536870014:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: Data?
          try decoder.decodeSingularBytesField(value: &v)
          if let v = v {_storage._oneofField = .oneofBytes(v)}
        case 536860000..<536870000:
          try decoder.decodeExtensionField(values: &_protobuf_extensionFieldValues, messageType: ProtobufUnittest_TestHugeFieldNumbersLite.self, fieldNumber: fieldNumber)
        default: break
        }
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      try visitor.visitExtensionFields(fields: _protobuf_extensionFieldValues, start: 536860000, end: 536870000)
      if let v = _storage._optionalInt32 {
        try visitor.visitSingularInt32Field(value: v, fieldNumber: 536870000)
      }
      if let v = _storage._fixed32 {
        try visitor.visitSingularInt32Field(value: v, fieldNumber: 536870001)
      }
      if !_storage._repeatedInt32.isEmpty {
        try visitor.visitRepeatedInt32Field(value: _storage._repeatedInt32, fieldNumber: 536870002)
      }
      if !_storage._packedInt32.isEmpty {
        try visitor.visitPackedInt32Field(value: _storage._packedInt32, fieldNumber: 536870003)
      }
      if let v = _storage._optionalEnum {
        try visitor.visitSingularEnumField(value: v, fieldNumber: 536870004)
      }
      if let v = _storage._optionalString {
        try visitor.visitSingularStringField(value: v, fieldNumber: 536870005)
      }
      if let v = _storage._optionalBytes {
        try visitor.visitSingularBytesField(value: v, fieldNumber: 536870006)
      }
      if let v = _storage._optionalMessage {
        try visitor.visitSingularMessageField(value: v, fieldNumber: 536870007)
      }
      if let v = _storage._optionalGroup {
        try visitor.visitSingularGroupField(value: v, fieldNumber: 536870008)
      }
      if !_storage._stringStringMap.isEmpty {
        try visitor.visitMapField(fieldType: SwiftProtobuf._ProtobufMap<SwiftProtobuf.ProtobufString,SwiftProtobuf.ProtobufString>.self, value: _storage._stringStringMap, fieldNumber: 536870010)
      }
      switch _storage._oneofField {
      case .oneofUint32(let v)?:
        try visitor.visitSingularUInt32Field(value: v, fieldNumber: 536870011)
      case .oneofTestAllTypes(let v)?:
        try visitor.visitSingularMessageField(value: v, fieldNumber: 536870012)
      case .oneofString(let v)?:
        try visitor.visitSingularStringField(value: v, fieldNumber: 536870013)
      case .oneofBytes(let v)?:
        try visitor.visitSingularBytesField(value: v, fieldNumber: 536870014)
      case nil: break
      }
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestHugeFieldNumbersLite, rhs: ProtobufUnittest_TestHugeFieldNumbersLite) -> Bool {
    if lhs._storage !== rhs._storage {
      let storagesAreEqual: Bool = withExtendedLifetime((lhs._storage, rhs._storage)) { (_args: (_StorageClass, _StorageClass)) in
        let _storage = _args.0
        let rhs_storage = _args.1
        if _storage._optionalInt32 != rhs_storage._optionalInt32 {return false}
        if _storage._fixed32 != rhs_storage._fixed32 {return false}
        if _storage._repeatedInt32 != rhs_storage._repeatedInt32 {return false}
        if _storage._packedInt32 != rhs_storage._packedInt32 {return false}
        if _storage._optionalEnum != rhs_storage._optionalEnum {return false}
        if _storage._optionalString != rhs_storage._optionalString {return false}
        if _storage._optionalBytes != rhs_storage._optionalBytes {return false}
        if _storage._optionalMessage != rhs_storage._optionalMessage {return false}
        if _storage._optionalGroup != rhs_storage._optionalGroup {return false}
        if _storage._stringStringMap != rhs_storage._stringStringMap {return false}
        if _storage._oneofField != rhs_storage._oneofField {return false}
        return true
      }
      if !storagesAreEqual {return false}
    }
    if lhs.unknownFields != rhs.unknownFields {return false}
    if lhs._protobuf_extensionFieldValues != rhs._protobuf_extensionFieldValues {return false}
    return true
  }
}

extension ProtobufUnittest_TestHugeFieldNumbersLite.OptionalGroup: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = ProtobufUnittest_TestHugeFieldNumbersLite.protoMessageName + ".OptionalGroup"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    536870009: .standard(proto: "group_a"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 536870009: try decoder.decodeSingularInt32Field(value: &self._groupA)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if let v = self._groupA {
      try visitor.visitSingularInt32Field(value: v, fieldNumber: 536870009)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestHugeFieldNumbersLite.OptionalGroup, rhs: ProtobufUnittest_TestHugeFieldNumbersLite.OptionalGroup) -> Bool {
    if lhs._groupA != rhs._groupA {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_TestOneofParsingLite: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".TestOneofParsingLite"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    1: .standard(proto: "oneof_int32"),
    2: .standard(proto: "oneof_submessage"),
    3: .standard(proto: "oneof_string"),
    4: .standard(proto: "oneof_bytes"),
    5: .standard(proto: "oneof_string_cord"),
    6: .standard(proto: "oneof_bytes_cord"),
    7: .standard(proto: "oneof_string_string_piece"),
    8: .standard(proto: "oneof_bytes_string_piece"),
    9: .standard(proto: "oneof_enum"),
  ]

  fileprivate class _StorageClass {
    var _oneofField: ProtobufUnittest_TestOneofParsingLite.OneOf_OneofField?

    static let defaultInstance = _StorageClass()

    private init() {}

    init(copying source: _StorageClass) {
      _oneofField = source._oneofField
    }
  }

  fileprivate mutating func _uniqueStorage() -> _StorageClass {
    if !isKnownUniquelyReferenced(&_storage) {
      _storage = _StorageClass(copying: _storage)
    }
    return _storage
  }

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    _ = _uniqueStorage()
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      while let fieldNumber = try decoder.nextFieldNumber() {
        switch fieldNumber {
        case 1:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: Int32?
          try decoder.decodeSingularInt32Field(value: &v)
          if let v = v {_storage._oneofField = .oneofInt32(v)}
        case 2:
          var v: ProtobufUnittest_TestAllTypesLite?
          if let current = _storage._oneofField {
            try decoder.handleConflictingOneOf()
            if case .oneofSubmessage(let m) = current {v = m}
          }
          try decoder.decodeSingularMessageField(value: &v)
          if let v = v {_storage._oneofField = .oneofSubmessage(v)}
        case 3:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: String?
          try decoder.decodeSingularStringField(value: &v)
          if let v = v {_storage._oneofField = .oneofString(v)}
        case 4:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: Data?
          try decoder.decodeSingularBytesField(value: &v)
          if let v = v {_storage._oneofField = .oneofBytes(v)}
        case 5:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: String?
          try decoder.decodeSingularStringField(value: &v)
          if let v = v {_storage._oneofField = .oneofStringCord(v)}
        case 6:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: Data?
          try decoder.decodeSingularBytesField(value: &v)
          if let v = v {_storage._oneofField = .oneofBytesCord(v)}
        case 7:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: String?
          try decoder.decodeSingularStringField(value: &v)
          if let v = v {_storage._oneofField = .oneofStringStringPiece(v)}
        case 8:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: Data?
          try decoder.decodeSingularBytesField(value: &v)
          if let v = v {_storage._oneofField = .oneofBytesStringPiece(v)}
        case 9:
          if _storage._oneofField != nil {try decoder.handleConflictingOneOf()}
          var v: ProtobufUnittest_V2EnumLite?
          try decoder.decodeSingularEnumField(value: &v)
          if let v = v {_storage._oneofField = .oneofEnum(v)}
        default: break
        }
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    try withExtendedLifetime(_storage) { (_storage: _StorageClass) in
      switch _storage._oneofField {
      case .oneofInt32(let v)?:
        try visitor.visitSingularInt32Field(value: v, fieldNumber: 1)
      case .oneofSubmessage(let v)?:
        try visitor.visitSingularMessageField(value: v, fieldNumber: 2)
      case .oneofString(let v)?:
        try visitor.visitSingularStringField(value: v, fieldNumber: 3)
      case .oneofBytes(let v)?:
        try visitor.visitSingularBytesField(value: v, fieldNumber: 4)
      case .oneofStringCord(let v)?:
        try visitor.visitSingularStringField(value: v, fieldNumber: 5)
      case .oneofBytesCord(let v)?:
        try visitor.visitSingularBytesField(value: v, fieldNumber: 6)
      case .oneofStringStringPiece(let v)?:
        try visitor.visitSingularStringField(value: v, fieldNumber: 7)
      case .oneofBytesStringPiece(let v)?:
        try visitor.visitSingularBytesField(value: v, fieldNumber: 8)
      case .oneofEnum(let v)?:
        try visitor.visitSingularEnumField(value: v, fieldNumber: 9)
      case nil: break
      }
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_TestOneofParsingLite, rhs: ProtobufUnittest_TestOneofParsingLite) -> Bool {
    if lhs._storage !== rhs._storage {
      let storagesAreEqual: Bool = withExtendedLifetime((lhs._storage, rhs._storage)) { (_args: (_StorageClass, _StorageClass)) in
        let _storage = _args.0
        let rhs_storage = _args.1
        if _storage._oneofField != rhs_storage._oneofField {return false}
        return true
      }
      if !storagesAreEqual {return false}
    }
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_PackedInt32: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".PackedInt32"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    2048: .standard(proto: "repeated_int32"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 2048: try decoder.decodeRepeatedInt32Field(value: &self.repeatedInt32)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if !self.repeatedInt32.isEmpty {
      try visitor.visitPackedInt32Field(value: self.repeatedInt32, fieldNumber: 2048)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_PackedInt32, rhs: ProtobufUnittest_PackedInt32) -> Bool {
    if lhs.repeatedInt32 != rhs.repeatedInt32 {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_NonPackedInt32: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".NonPackedInt32"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    2048: .standard(proto: "repeated_int32"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 2048: try decoder.decodeRepeatedInt32Field(value: &self.repeatedInt32)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if !self.repeatedInt32.isEmpty {
      try visitor.visitRepeatedInt32Field(value: self.repeatedInt32, fieldNumber: 2048)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_NonPackedInt32, rhs: ProtobufUnittest_NonPackedInt32) -> Bool {
    if lhs.repeatedInt32 != rhs.repeatedInt32 {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_PackedFixed32: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".PackedFixed32"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    2048: .standard(proto: "repeated_fixed32"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 2048: try decoder.decodeRepeatedFixed32Field(value: &self.repeatedFixed32)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if !self.repeatedFixed32.isEmpty {
      try visitor.visitPackedFixed32Field(value: self.repeatedFixed32, fieldNumber: 2048)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_PackedFixed32, rhs: ProtobufUnittest_PackedFixed32) -> Bool {
    if lhs.repeatedFixed32 != rhs.repeatedFixed32 {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}

extension ProtobufUnittest_NonPackedFixed32: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
  static let protoMessageName: String = _protobuf_package + ".NonPackedFixed32"
  static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
    2048: .standard(proto: "repeated_fixed32"),
  ]

  mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
    while let fieldNumber = try decoder.nextFieldNumber() {
      switch fieldNumber {
      case 2048: try decoder.decodeRepeatedFixed32Field(value: &self.repeatedFixed32)
      default: break
      }
    }
  }

  func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
    if !self.repeatedFixed32.isEmpty {
      try visitor.visitRepeatedFixed32Field(value: self.repeatedFixed32, fieldNumber: 2048)
    }
    try unknownFields.traverse(visitor: &visitor)
  }

  static func ==(lhs: ProtobufUnittest_NonPackedFixed32, rhs: ProtobufUnittest_NonPackedFixed32) -> Bool {
    if lhs.repeatedFixed32 != rhs.repeatedFixed32 {return false}
    if lhs.unknownFields != rhs.unknownFields {return false}
    return true
  }
}
