text: // Generated by the protocol buffer compiler.  DO NOT EDIT!
  
  // @@protoc_insertion_point(imports)
  #import "ProtocolBuffers.h"
  
  @class PBDescriptorProto;
  @class PBDescriptorProtoBuilder;
  @class PBDescriptorProtoExtensionRange;
  @class PBDescriptorProtoExtensionRangeBuilder;
  @class PBEnumDescriptorProto;
  @class PBEnumDescriptorProtoBuilder;
  @class PBEnumOptions;
  @class PBEnumOptionsBuilder;
  @class PBEnumValueDescriptorProto;
  @class PBEnumValueDescriptorProtoBuilder;
  @class PBEnumValueOptions;
  @class PBEnumValueOptionsBuilder;
  @class PBFieldDescriptorProto;
  @class PBFieldDescriptorProtoBuilder;
  @class PBFieldOptions;
  @class PBFieldOptionsBuilder;
  @class PBFileDescriptorProto;
  @class PBFileDescriptorProtoBuilder;
  @class PBFileDescriptorSet;
  @class PBFileDescriptorSetBuilder;
  @class PBFileOptions;
  @class PBFileOptionsBuilder;
  @class PBMessageOptions;
  @class PBMessageOptionsBuilder;
  @class PBMethodDescriptorProto;
  @class PBMethodDescriptorProtoBuilder;
  @class PBMethodOptions;
  @class PBMethodOptionsBuilder;
  @class PBServiceDescriptorProto;
  @class PBServiceDescriptorProtoBuilder;
  @class PBServiceOptions;
  @class PBServiceOptionsBuilder;
  @class PBSourceCodeInfo;
  @class PBSourceCodeInfoBuilder;
  @class PBSourceCodeInfoLocation;
  @class PBSourceCodeInfoLocationBuilder;
  @class PBUninterpretedOption;
  @class PBUninterpretedOptionBuilder;
  @class PBUninterpretedOptionNamePart;
  @class PBUninterpretedOptionNamePartBuilder;
  #ifndef __has_feature
    #define __has_feature(x) 0 // Compatibility with non-clang compilers.
  #endif // __has_feature
  
  #ifndef NS_RETURNS_NOT_RETAINED
    #if __has_feature(attribute_ns_returns_not_retained)
      #define NS_RETURNS_NOT_RETAINED __attribute__((ns_returns_not_retained))
    #else
      #define NS_RETURNS_NOT_RETAINED
    #endif
  #endif
  
  typedef enum {
    PBFieldDescriptorProtoTypeTypeDouble = 1,
    PBFieldDescriptorProtoTypeTypeFloat = 2,
    PBFieldDescriptorProtoTypeTypeInt64 = 3,
    PBFieldDescriptorProtoTypeTypeUint64 = 4,
    PBFieldDescriptorProtoTypeTypeInt32 = 5,
    PBFieldDescriptorProtoTypeTypeFixed64 = 6,
    PBFieldDescriptorProtoTypeTypeFixed32 = 7,
    PBFieldDescriptorProtoTypeTypeBool = 8,
    PBFieldDescriptorProtoTypeTypeString = 9,
    PBFieldDescriptorProtoTypeTypeGroup = 10,
    PBFieldDescriptorProtoTypeTypeMessage = 11,
    PBFieldDescriptorProtoTypeTypeBytes = 12,
    PBFieldDescriptorProtoTypeTypeUint32 = 13,
    PBFieldDescriptorProtoTypeTypeEnum = 14,
    PBFieldDescriptorProtoTypeTypeSfixed32 = 15,
    PBFieldDescriptorProtoTypeTypeSfixed64 = 16,
    PBFieldDescriptorProtoTypeTypeSint32 = 17,
    PBFieldDescriptorProtoTypeTypeSint64 = 18,
  } PBFieldDescriptorProtoType;
  
  BOOL PBFieldDescriptorProtoTypeIsValidValue(PBFieldDescriptorProtoType value);
  
  typedef enum {
    PBFieldDescriptorProtoLabelLabelOptional = 1,
    PBFieldDescriptorProtoLabelLabelRequired = 2,
    PBFieldDescriptorProtoLabelLabelRepeated = 3,
  } PBFieldDescriptorProtoLabel;
  
  BOOL PBFieldDescriptorProtoLabelIsValidValue(PBFieldDescriptorProtoLabel value);
  
  typedef enum {
    PBFileOptionsOptimizeModeSpeed = 1,
    PBFileOptionsOptimizeModeCodeSize = 2,
    PBFileOptionsOptimizeModeLiteRuntime = 3,
  } PBFileOptionsOptimizeMode;
  
  BOOL PBFileOptionsOptimizeModeIsValidValue(PBFileOptionsOptimizeMode value);
  
  typedef enum {
    PBFieldOptionsCTypeString = 0,
    PBFieldOptionsCTypeCord = 1,
    PBFieldOptionsCTypeStringPiece = 2,
  } PBFieldOptionsCType;
  
  BOOL PBFieldOptionsCTypeIsValidValue(PBFieldOptionsCType value);
  
  
  @interface PBDescriptorRoot : NSObject {
  }
  + (PBExtensionRegistry*) extensionRegistry;
  + (void) registerAllExtensions:(PBMutableExtensionRegistry*) registry;
  @end
  
  @interface PBFileDescriptorSet : PBGeneratedMessage {
  @private
    PBAppendableArray * fileArray;
  }
  @property (readonly, strong) PBArray * file;
  - (PBFileDescriptorProto*)fileAtIndex:(NSUInteger)index;
  
  + (PBFileDescriptorSet*) defaultInstance;
  - (PBFileDescriptorSet*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBFileDescriptorSetBuilder*) builder;
  + (PBFileDescriptorSetBuilder*) builder;
  + (PBFileDescriptorSetBuilder*) builderWithPrototype:(PBFileDescriptorSet*) prototype;
  - (PBFileDescriptorSetBuilder*) toBuilder;
  
  + (PBFileDescriptorSet*) parseFromData:(NSData*) data;
  + (PBFileDescriptorSet*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFileDescriptorSet*) parseFromInputStream:(NSInputStream*) input;
  + (PBFileDescriptorSet*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFileDescriptorSet*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBFileDescriptorSet*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBFileDescriptorSetBuilder : PBGeneratedMessageBuilder {
  @private
    PBFileDescriptorSet* result;
  }
  
  - (PBFileDescriptorSet*) defaultInstance;
  
  - (PBFileDescriptorSetBuilder*) clear;
  - (PBFileDescriptorSetBuilder*) clone;
  
  - (PBFileDescriptorSet*) build;
  - (PBFileDescriptorSet*) buildPartial;
  
  - (PBFileDescriptorSetBuilder*) mergeFrom:(PBFileDescriptorSet*) other;
  - (PBFileDescriptorSetBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBFileDescriptorSetBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (PBAppendableArray *)file;
  - (PBFileDescriptorProto*)fileAtIndex:(NSUInteger)index;
  - (PBFileDescriptorSetBuilder *)addFile:(PBFileDescriptorProto*)value;
  - (PBFileDescriptorSetBuilder *)setFileArray:(NSArray *)array;
  - (PBFileDescriptorSetBuilder *)setFileValues:(const PBFileDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBFileDescriptorSetBuilder *)clearFile;
  @end
  
  @interface PBFileDescriptorProto : PBGeneratedMessage {
  @private
    BOOL hasName_:1;
    BOOL hasPackage_:1;
    BOOL hasOptions_:1;
    BOOL hasSourceCodeInfo_:1;
    NSString* name;
    NSString* package;
    PBFileOptions* options;
    PBSourceCodeInfo* sourceCodeInfo;
    PBAppendableArray * dependencyArray;
    PBAppendableArray * messageTypeArray;
    PBAppendableArray * enumTypeArray;
    PBAppendableArray * serviceArray;
    PBAppendableArray * extensionArray;
  }
  - (BOOL) hasName;
  - (BOOL) hasPackage;
  - (BOOL) hasOptions;
  - (BOOL) hasSourceCodeInfo;
  @property (readonly, strong) NSString* name;
  @property (readonly, strong) NSString* package;
  @property (readonly, strong) PBArray * dependency;
  @property (readonly, strong) PBArray * messageType;
  @property (readonly, strong) PBArray * enumType;
  @property (readonly, strong) PBArray * service;
  @property (readonly, strong) PBArray * extension;
  @property (readonly, strong) PBFileOptions* options;
  @property (readonly, strong) PBSourceCodeInfo* sourceCodeInfo;
  - (NSString*)dependencyAtIndex:(NSUInteger)index;
  - (PBDescriptorProto*)messageTypeAtIndex:(NSUInteger)index;
  - (PBEnumDescriptorProto*)enumTypeAtIndex:(NSUInteger)index;
  - (PBServiceDescriptorProto*)serviceAtIndex:(NSUInteger)index;
  - (PBFieldDescriptorProto*)extensionAtIndex:(NSUInteger)index;
  
  + (PBFileDescriptorProto*) defaultInstance;
  - (PBFileDescriptorProto*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBFileDescriptorProtoBuilder*) builder;
  + (PBFileDescriptorProtoBuilder*) builder;
  + (PBFileDescriptorProtoBuilder*) builderWithPrototype:(PBFileDescriptorProto*) prototype;
  - (PBFileDescriptorProtoBuilder*) toBuilder;
  
  + (PBFileDescriptorProto*) parseFromData:(NSData*) data;
  + (PBFileDescriptorProto*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFileDescriptorProto*) parseFromInputStream:(NSInputStream*) input;
  + (PBFileDescriptorProto*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFileDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBFileDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBFileDescriptorProtoBuilder : PBGeneratedMessageBuilder {
  @private
    PBFileDescriptorProto* result;
  }
  
  - (PBFileDescriptorProto*) defaultInstance;
  
  - (PBFileDescriptorProtoBuilder*) clear;
  - (PBFileDescriptorProtoBuilder*) clone;
  
  - (PBFileDescriptorProto*) build;
  - (PBFileDescriptorProto*) buildPartial;
  
  - (PBFileDescriptorProtoBuilder*) mergeFrom:(PBFileDescriptorProto*) other;
  - (PBFileDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBFileDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasName;
  - (NSString*) name;
  - (PBFileDescriptorProtoBuilder*) setName:(NSString*) value;
  - (PBFileDescriptorProtoBuilder*) clearName;
  
  - (BOOL) hasPackage;
  - (NSString*) package;
  - (PBFileDescriptorProtoBuilder*) setPackage:(NSString*) value;
  - (PBFileDescriptorProtoBuilder*) clearPackage;
  
  - (PBAppendableArray *)dependency;
  - (NSString*)dependencyAtIndex:(NSUInteger)index;
  - (PBFileDescriptorProtoBuilder *)addDependency:(NSString*)value;
  - (PBFileDescriptorProtoBuilder *)setDependencyArray:(NSArray *)array;
  - (PBFileDescriptorProtoBuilder *)setDependencyValues:(const NSString* *)values count:(NSUInteger)count;
  - (PBFileDescriptorProtoBuilder *)clearDependency;
  
  - (PBAppendableArray *)messageType;
  - (PBDescriptorProto*)messageTypeAtIndex:(NSUInteger)index;
  - (PBFileDescriptorProtoBuilder *)addMessageType:(PBDescriptorProto*)value;
  - (PBFileDescriptorProtoBuilder *)setMessageTypeArray:(NSArray *)array;
  - (PBFileDescriptorProtoBuilder *)setMessageTypeValues:(const PBDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBFileDescriptorProtoBuilder *)clearMessageType;
  
  - (PBAppendableArray *)enumType;
  - (PBEnumDescriptorProto*)enumTypeAtIndex:(NSUInteger)index;
  - (PBFileDescriptorProtoBuilder *)addEnumType:(PBEnumDescriptorProto*)value;
  - (PBFileDescriptorProtoBuilder *)setEnumTypeArray:(NSArray *)array;
  - (PBFileDescriptorProtoBuilder *)setEnumTypeValues:(const PBEnumDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBFileDescriptorProtoBuilder *)clearEnumType;
  
  - (PBAppendableArray *)service;
  - (PBServiceDescriptorProto*)serviceAtIndex:(NSUInteger)index;
  - (PBFileDescriptorProtoBuilder *)addService:(PBServiceDescriptorProto*)value;
  - (PBFileDescriptorProtoBuilder *)setServiceArray:(NSArray *)array;
  - (PBFileDescriptorProtoBuilder *)setServiceValues:(const PBServiceDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBFileDescriptorProtoBuilder *)clearService;
  
  - (PBAppendableArray *)extension;
  - (PBFieldDescriptorProto*)extensionAtIndex:(NSUInteger)index;
  - (PBFileDescriptorProtoBuilder *)addExtension:(PBFieldDescriptorProto*)value;
  - (PBFileDescriptorProtoBuilder *)setExtensionArray:(NSArray *)array;
  - (PBFileDescriptorProtoBuilder *)setExtensionValues:(const PBFieldDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBFileDescriptorProtoBuilder *)clearExtension;
  
  - (BOOL) hasOptions;
  - (PBFileOptions*) options;
  - (PBFileDescriptorProtoBuilder*) setOptions:(PBFileOptions*) value;
  - (PBFileDescriptorProtoBuilder*) setOptionsBuilder:(PBFileOptionsBuilder*) builderForValue;
  - (PBFileDescriptorProtoBuilder*) mergeOptions:(PBFileOptions*) value;
  - (PBFileDescriptorProtoBuilder*) clearOptions;
  
  - (BOOL) hasSourceCodeInfo;
  - (PBSourceCodeInfo*) sourceCodeInfo;
  - (PBFileDescriptorProtoBuilder*) setSourceCodeInfo:(PBSourceCodeInfo*) value;
  - (PBFileDescriptorProtoBuilder*) setSourceCodeInfoBuilder:(PBSourceCodeInfoBuilder*) builderForValue;
  - (PBFileDescriptorProtoBuilder*) mergeSourceCodeInfo:(PBSourceCodeInfo*) value;
  - (PBFileDescriptorProtoBuilder*) clearSourceCodeInfo;
  @end
  
  @interface PBDescriptorProto : PBGeneratedMessage {
  @private
    BOOL hasName_:1;
    BOOL hasOptions_:1;
    NSString* name;
    PBMessageOptions* options;
    PBAppendableArray * fieldArray;
    PBAppendableArray * extensionArray;
    PBAppendableArray * nestedTypeArray;
    PBAppendableArray * enumTypeArray;
    PBAppendableArray * extensionRangeArray;
  }
  - (BOOL) hasName;
  - (BOOL) hasOptions;
  @property (readonly, strong) NSString* name;
  @property (readonly, strong) PBArray * field;
  @property (readonly, strong) PBArray * extension;
  @property (readonly, strong) PBArray * nestedType;
  @property (readonly, strong) PBArray * enumType;
  @property (readonly, strong) PBArray * extensionRange;
  @property (readonly, strong) PBMessageOptions* options;
  - (PBFieldDescriptorProto*)fieldAtIndex:(NSUInteger)index;
  - (PBFieldDescriptorProto*)extensionAtIndex:(NSUInteger)index;
  - (PBDescriptorProto*)nestedTypeAtIndex:(NSUInteger)index;
  - (PBEnumDescriptorProto*)enumTypeAtIndex:(NSUInteger)index;
  - (PBDescriptorProtoExtensionRange*)extensionRangeAtIndex:(NSUInteger)index;
  
  + (PBDescriptorProto*) defaultInstance;
  - (PBDescriptorProto*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBDescriptorProtoBuilder*) builder;
  + (PBDescriptorProtoBuilder*) builder;
  + (PBDescriptorProtoBuilder*) builderWithPrototype:(PBDescriptorProto*) prototype;
  - (PBDescriptorProtoBuilder*) toBuilder;
  
  + (PBDescriptorProto*) parseFromData:(NSData*) data;
  + (PBDescriptorProto*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBDescriptorProto*) parseFromInputStream:(NSInputStream*) input;
  + (PBDescriptorProto*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBDescriptorProtoExtensionRange : PBGeneratedMessage {
  @private
    BOOL hasStart_:1;
    BOOL hasEnd_:1;
    long start;
    long end;
  }
  - (BOOL) hasStart;
  - (BOOL) hasEnd;
  @property (readonly) long start;
  @property (readonly) long end;
  
  + (PBDescriptorProtoExtensionRange*) defaultInstance;
  - (PBDescriptorProtoExtensionRange*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBDescriptorProtoExtensionRangeBuilder*) builder;
  + (PBDescriptorProtoExtensionRangeBuilder*) builder;
  + (PBDescriptorProtoExtensionRangeBuilder*) builderWithPrototype:(PBDescriptorProtoExtensionRange*) prototype;
  - (PBDescriptorProtoExtensionRangeBuilder*) toBuilder;
  
  + (PBDescriptorProtoExtensionRange*) parseFromData:(NSData*) data;
  + (PBDescriptorProtoExtensionRange*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBDescriptorProtoExtensionRange*) parseFromInputStream:(NSInputStream*) input;
  + (PBDescriptorProtoExtensionRange*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBDescriptorProtoExtensionRange*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBDescriptorProtoExtensionRange*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBDescriptorProtoExtensionRangeBuilder : PBGeneratedMessageBuilder {
  @private
    PBDescriptorProtoExtensionRange* result;
  }
  
  - (PBDescriptorProtoExtensionRange*) defaultInstance;
  
  - (PBDescriptorProtoExtensionRangeBuilder*) clear;
  - (PBDescriptorProtoExtensionRangeBuilder*) clone;
  
  - (PBDescriptorProtoExtensionRange*) build;
  - (PBDescriptorProtoExtensionRange*) buildPartial;
  
  - (PBDescriptorProtoExtensionRangeBuilder*) mergeFrom:(PBDescriptorProtoExtensionRange*) other;
  - (PBDescriptorProtoExtensionRangeBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBDescriptorProtoExtensionRangeBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasStart;
  - (long) start;
  - (PBDescriptorProtoExtensionRangeBuilder*) setStart:(long) value;
  - (PBDescriptorProtoExtensionRangeBuilder*) clearStart;
  
  - (BOOL) hasEnd;
  - (long) end;
  - (PBDescriptorProtoExtensionRangeBuilder*) setEnd:(long) value;
  - (PBDescriptorProtoExtensionRangeBuilder*) clearEnd;
  @end
  
  @interface PBDescriptorProtoBuilder : PBGeneratedMessageBuilder {
  @private
    PBDescriptorProto* result;
  }
  
  - (PBDescriptorProto*) defaultInstance;
  
  - (PBDescriptorProtoBuilder*) clear;
  - (PBDescriptorProtoBuilder*) clone;
  
  - (PBDescriptorProto*) build;
  - (PBDescriptorProto*) buildPartial;
  
  - (PBDescriptorProtoBuilder*) mergeFrom:(PBDescriptorProto*) other;
  - (PBDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasName;
  - (NSString*) name;
  - (PBDescriptorProtoBuilder*) setName:(NSString*) value;
  - (PBDescriptorProtoBuilder*) clearName;
  
  - (PBAppendableArray *)field;
  - (PBFieldDescriptorProto*)fieldAtIndex:(NSUInteger)index;
  - (PBDescriptorProtoBuilder *)addField:(PBFieldDescriptorProto*)value;
  - (PBDescriptorProtoBuilder *)setFieldArray:(NSArray *)array;
  - (PBDescriptorProtoBuilder *)setFieldValues:(const PBFieldDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBDescriptorProtoBuilder *)clearField;
  
  - (PBAppendableArray *)extension;
  - (PBFieldDescriptorProto*)extensionAtIndex:(NSUInteger)index;
  - (PBDescriptorProtoBuilder *)addExtension:(PBFieldDescriptorProto*)value;
  - (PBDescriptorProtoBuilder *)setExtensionArray:(NSArray *)array;
  - (PBDescriptorProtoBuilder *)setExtensionValues:(const PBFieldDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBDescriptorProtoBuilder *)clearExtension;
  
  - (PBAppendableArray *)nestedType;
  - (PBDescriptorProto*)nestedTypeAtIndex:(NSUInteger)index;
  - (PBDescriptorProtoBuilder *)addNestedType:(PBDescriptorProto*)value;
  - (PBDescriptorProtoBuilder *)setNestedTypeArray:(NSArray *)array;
  - (PBDescriptorProtoBuilder *)setNestedTypeValues:(const PBDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBDescriptorProtoBuilder *)clearNestedType;
  
  - (PBAppendableArray *)enumType;
  - (PBEnumDescriptorProto*)enumTypeAtIndex:(NSUInteger)index;
  - (PBDescriptorProtoBuilder *)addEnumType:(PBEnumDescriptorProto*)value;
  - (PBDescriptorProtoBuilder *)setEnumTypeArray:(NSArray *)array;
  - (PBDescriptorProtoBuilder *)setEnumTypeValues:(const PBEnumDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBDescriptorProtoBuilder *)clearEnumType;
  
  - (PBAppendableArray *)extensionRange;
  - (PBDescriptorProtoExtensionRange*)extensionRangeAtIndex:(NSUInteger)index;
  - (PBDescriptorProtoBuilder *)addExtensionRange:(PBDescriptorProtoExtensionRange*)value;
  - (PBDescriptorProtoBuilder *)setExtensionRangeArray:(NSArray *)array;
  - (PBDescriptorProtoBuilder *)setExtensionRangeValues:(const PBDescriptorProtoExtensionRange* __strong *)values count:(NSUInteger)count;
  - (PBDescriptorProtoBuilder *)clearExtensionRange;
  
  - (BOOL) hasOptions;
  - (PBMessageOptions*) options;
  - (PBDescriptorProtoBuilder*) setOptions:(PBMessageOptions*) value;
  - (PBDescriptorProtoBuilder*) setOptionsBuilder:(PBMessageOptionsBuilder*) builderForValue;
  - (PBDescriptorProtoBuilder*) mergeOptions:(PBMessageOptions*) value;
  - (PBDescriptorProtoBuilder*) clearOptions;
  @end
  
  @interface PBFieldDescriptorProto : PBGeneratedMessage {
  @private
    BOOL hasNumber_:1;
    BOOL hasName_:1;
    BOOL hasTypeName_:1;
    BOOL hasExtendee_:1;
    BOOL hasDefaultValue_:1;
    BOOL hasOptions_:1;
    BOOL hasLabel_:1;
    BOOL hasType_:1;
    long number;
    NSString* name;
    NSString* typeName;
    NSString* extendee;
    NSString* defaultValue;
    PBFieldOptions* options;
    PBFieldDescriptorProtoLabel label;
    PBFieldDescriptorProtoType type;
  }
  - (BOOL) hasName;
  - (BOOL) hasNumber;
  - (BOOL) hasLabel;
  - (BOOL) hasType;
  - (BOOL) hasTypeName;
  - (BOOL) hasExtendee;
  - (BOOL) hasDefaultValue;
  - (BOOL) hasOptions;
  @property (readonly, strong) NSString* name;
  @property (readonly) long number;
  @property (readonly) PBFieldDescriptorProtoLabel label;
  @property (readonly) PBFieldDescriptorProtoType type;
  @property (readonly, strong) NSString* typeName;
  @property (readonly, strong) NSString* extendee;
  @property (readonly, strong) NSString* defaultValue;
  @property (readonly, strong) PBFieldOptions* options;
  
  + (PBFieldDescriptorProto*) defaultInstance;
  - (PBFieldDescriptorProto*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBFieldDescriptorProtoBuilder*) builder;
  + (PBFieldDescriptorProtoBuilder*) builder;
  + (PBFieldDescriptorProtoBuilder*) builderWithPrototype:(PBFieldDescriptorProto*) prototype;
  - (PBFieldDescriptorProtoBuilder*) toBuilder;
  
  + (PBFieldDescriptorProto*) parseFromData:(NSData*) data;
  + (PBFieldDescriptorProto*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFieldDescriptorProto*) parseFromInputStream:(NSInputStream*) input;
  + (PBFieldDescriptorProto*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFieldDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBFieldDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBFieldDescriptorProtoBuilder : PBGeneratedMessageBuilder {
  @private
    PBFieldDescriptorProto* result;
  }
  
  - (PBFieldDescriptorProto*) defaultInstance;
  
  - (PBFieldDescriptorProtoBuilder*) clear;
  - (PBFieldDescriptorProtoBuilder*) clone;
  
  - (PBFieldDescriptorProto*) build;
  - (PBFieldDescriptorProto*) buildPartial;
  
  - (PBFieldDescriptorProtoBuilder*) mergeFrom:(PBFieldDescriptorProto*) other;
  - (PBFieldDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBFieldDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasName;
  - (NSString*) name;
  - (PBFieldDescriptorProtoBuilder*) setName:(NSString*) value;
  - (PBFieldDescriptorProtoBuilder*) clearName;
  
  - (BOOL) hasNumber;
  - (long) number;
  - (PBFieldDescriptorProtoBuilder*) setNumber:(long) value;
  - (PBFieldDescriptorProtoBuilder*) clearNumber;
  
  - (BOOL) hasLabel;
  - (PBFieldDescriptorProtoLabel) label;
  - (PBFieldDescriptorProtoBuilder*) setLabel:(PBFieldDescriptorProtoLabel) value;
  - (PBFieldDescriptorProtoBuilder*) clearLabel;
  
  - (BOOL) hasType;
  - (PBFieldDescriptorProtoType) type;
  - (PBFieldDescriptorProtoBuilder*) setType:(PBFieldDescriptorProtoType) value;
  - (PBFieldDescriptorProtoBuilder*) clearType;
  
  - (BOOL) hasTypeName;
  - (NSString*) typeName;
  - (PBFieldDescriptorProtoBuilder*) setTypeName:(NSString*) value;
  - (PBFieldDescriptorProtoBuilder*) clearTypeName;
  
  - (BOOL) hasExtendee;
  - (NSString*) extendee;
  - (PBFieldDescriptorProtoBuilder*) setExtendee:(NSString*) value;
  - (PBFieldDescriptorProtoBuilder*) clearExtendee;
  
  - (BOOL) hasDefaultValue;
  - (NSString*) defaultValue;
  - (PBFieldDescriptorProtoBuilder*) setDefaultValue:(NSString*) value;
  - (PBFieldDescriptorProtoBuilder*) clearDefaultValue;
  
  - (BOOL) hasOptions;
  - (PBFieldOptions*) options;
  - (PBFieldDescriptorProtoBuilder*) setOptions:(PBFieldOptions*) value;
  - (PBFieldDescriptorProtoBuilder*) setOptionsBuilder:(PBFieldOptionsBuilder*) builderForValue;
  - (PBFieldDescriptorProtoBuilder*) mergeOptions:(PBFieldOptions*) value;
  - (PBFieldDescriptorProtoBuilder*) clearOptions;
  @end
  
  @interface PBEnumDescriptorProto : PBGeneratedMessage {
  @private
    BOOL hasName_:1;
    BOOL hasOptions_:1;
    NSString* name;
    PBEnumOptions* options;
    PBAppendableArray * valueArray;
  }
  - (BOOL) hasName;
  - (BOOL) hasOptions;
  @property (readonly, strong) NSString* name;
  @property (readonly, strong) PBArray * value;
  @property (readonly, strong) PBEnumOptions* options;
  - (PBEnumValueDescriptorProto*)valueAtIndex:(NSUInteger)index;
  
  + (PBEnumDescriptorProto*) defaultInstance;
  - (PBEnumDescriptorProto*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBEnumDescriptorProtoBuilder*) builder;
  + (PBEnumDescriptorProtoBuilder*) builder;
  + (PBEnumDescriptorProtoBuilder*) builderWithPrototype:(PBEnumDescriptorProto*) prototype;
  - (PBEnumDescriptorProtoBuilder*) toBuilder;
  
  + (PBEnumDescriptorProto*) parseFromData:(NSData*) data;
  + (PBEnumDescriptorProto*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBEnumDescriptorProto*) parseFromInputStream:(NSInputStream*) input;
  + (PBEnumDescriptorProto*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBEnumDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBEnumDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBEnumDescriptorProtoBuilder : PBGeneratedMessageBuilder {
  @private
    PBEnumDescriptorProto* result;
  }
  
  - (PBEnumDescriptorProto*) defaultInstance;
  
  - (PBEnumDescriptorProtoBuilder*) clear;
  - (PBEnumDescriptorProtoBuilder*) clone;
  
  - (PBEnumDescriptorProto*) build;
  - (PBEnumDescriptorProto*) buildPartial;
  
  - (PBEnumDescriptorProtoBuilder*) mergeFrom:(PBEnumDescriptorProto*) other;
  - (PBEnumDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBEnumDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasName;
  - (NSString*) name;
  - (PBEnumDescriptorProtoBuilder*) setName:(NSString*) value;
  - (PBEnumDescriptorProtoBuilder*) clearName;
  
  - (PBAppendableArray *)value;
  - (PBEnumValueDescriptorProto*)valueAtIndex:(NSUInteger)index;
  - (PBEnumDescriptorProtoBuilder *)addValue:(PBEnumValueDescriptorProto*)value;
  - (PBEnumDescriptorProtoBuilder *)setValueArray:(NSArray *)array;
  - (PBEnumDescriptorProtoBuilder *)setValueValues:(const PBEnumValueDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBEnumDescriptorProtoBuilder *)clearValue;
  
  - (BOOL) hasOptions;
  - (PBEnumOptions*) options;
  - (PBEnumDescriptorProtoBuilder*) setOptions:(PBEnumOptions*) value;
  - (PBEnumDescriptorProtoBuilder*) setOptionsBuilder:(PBEnumOptionsBuilder*) builderForValue;
  - (PBEnumDescriptorProtoBuilder*) mergeOptions:(PBEnumOptions*) value;
  - (PBEnumDescriptorProtoBuilder*) clearOptions;
  @end
  
  @interface PBEnumValueDescriptorProto : PBGeneratedMessage {
  @private
    BOOL hasNumber_:1;
    BOOL hasName_:1;
    BOOL hasOptions_:1;
    long number;
    NSString* name;
    PBEnumValueOptions* options;
  }
  - (BOOL) hasName;
  - (BOOL) hasNumber;
  - (BOOL) hasOptions;
  @property (readonly, strong) NSString* name;
  @property (readonly) long number;
  @property (readonly, strong) PBEnumValueOptions* options;
  
  + (PBEnumValueDescriptorProto*) defaultInstance;
  - (PBEnumValueDescriptorProto*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBEnumValueDescriptorProtoBuilder*) builder;
  + (PBEnumValueDescriptorProtoBuilder*) builder;
  + (PBEnumValueDescriptorProtoBuilder*) builderWithPrototype:(PBEnumValueDescriptorProto*) prototype;
  - (PBEnumValueDescriptorProtoBuilder*) toBuilder;
  
  + (PBEnumValueDescriptorProto*) parseFromData:(NSData*) data;
  + (PBEnumValueDescriptorProto*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBEnumValueDescriptorProto*) parseFromInputStream:(NSInputStream*) input;
  + (PBEnumValueDescriptorProto*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBEnumValueDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBEnumValueDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBEnumValueDescriptorProtoBuilder : PBGeneratedMessageBuilder {
  @private
    PBEnumValueDescriptorProto* result;
  }
  
  - (PBEnumValueDescriptorProto*) defaultInstance;
  
  - (PBEnumValueDescriptorProtoBuilder*) clear;
  - (PBEnumValueDescriptorProtoBuilder*) clone;
  
  - (PBEnumValueDescriptorProto*) build;
  - (PBEnumValueDescriptorProto*) buildPartial;
  
  - (PBEnumValueDescriptorProtoBuilder*) mergeFrom:(PBEnumValueDescriptorProto*) other;
  - (PBEnumValueDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBEnumValueDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasName;
  - (NSString*) name;
  - (PBEnumValueDescriptorProtoBuilder*) setName:(NSString*) value;
  - (PBEnumValueDescriptorProtoBuilder*) clearName;
  
  - (BOOL) hasNumber;
  - (long) number;
  - (PBEnumValueDescriptorProtoBuilder*) setNumber:(long) value;
  - (PBEnumValueDescriptorProtoBuilder*) clearNumber;
  
  - (BOOL) hasOptions;
  - (PBEnumValueOptions*) options;
  - (PBEnumValueDescriptorProtoBuilder*) setOptions:(PBEnumValueOptions*) value;
  - (PBEnumValueDescriptorProtoBuilder*) setOptionsBuilder:(PBEnumValueOptionsBuilder*) builderForValue;
  - (PBEnumValueDescriptorProtoBuilder*) mergeOptions:(PBEnumValueOptions*) value;
  - (PBEnumValueDescriptorProtoBuilder*) clearOptions;
  @end
  
  @interface PBServiceDescriptorProto : PBGeneratedMessage {
  @private
    BOOL hasName_:1;
    BOOL hasOptions_:1;
    NSString* name;
    PBServiceOptions* options;
    PBAppendableArray * methodArray;
  }
  - (BOOL) hasName;
  - (BOOL) hasOptions;
  @property (readonly, strong) NSString* name;
  @property (readonly, strong) PBArray * method;
  @property (readonly, strong) PBServiceOptions* options;
  - (PBMethodDescriptorProto*)methodAtIndex:(NSUInteger)index;
  
  + (PBServiceDescriptorProto*) defaultInstance;
  - (PBServiceDescriptorProto*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBServiceDescriptorProtoBuilder*) builder;
  + (PBServiceDescriptorProtoBuilder*) builder;
  + (PBServiceDescriptorProtoBuilder*) builderWithPrototype:(PBServiceDescriptorProto*) prototype;
  - (PBServiceDescriptorProtoBuilder*) toBuilder;
  
  + (PBServiceDescriptorProto*) parseFromData:(NSData*) data;
  + (PBServiceDescriptorProto*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBServiceDescriptorProto*) parseFromInputStream:(NSInputStream*) input;
  + (PBServiceDescriptorProto*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBServiceDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBServiceDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBServiceDescriptorProtoBuilder : PBGeneratedMessageBuilder {
  @private
    PBServiceDescriptorProto* result;
  }
  
  - (PBServiceDescriptorProto*) defaultInstance;
  
  - (PBServiceDescriptorProtoBuilder*) clear;
  - (PBServiceDescriptorProtoBuilder*) clone;
  
  - (PBServiceDescriptorProto*) build;
  - (PBServiceDescriptorProto*) buildPartial;
  
  - (PBServiceDescriptorProtoBuilder*) mergeFrom:(PBServiceDescriptorProto*) other;
  - (PBServiceDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBServiceDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasName;
  - (NSString*) name;
  - (PBServiceDescriptorProtoBuilder*) setName:(NSString*) value;
  - (PBServiceDescriptorProtoBuilder*) clearName;
  
  - (PBAppendableArray *)method;
  - (PBMethodDescriptorProto*)methodAtIndex:(NSUInteger)index;
  - (PBServiceDescriptorProtoBuilder *)addMethod:(PBMethodDescriptorProto*)value;
  - (PBServiceDescriptorProtoBuilder *)setMethodArray:(NSArray *)array;
  - (PBServiceDescriptorProtoBuilder *)setMethodValues:(const PBMethodDescriptorProto* __strong *)values count:(NSUInteger)count;
  - (PBServiceDescriptorProtoBuilder *)clearMethod;
  
  - (BOOL) hasOptions;
  - (PBServiceOptions*) options;
  - (PBServiceDescriptorProtoBuilder*) setOptions:(PBServiceOptions*) value;
  - (PBServiceDescriptorProtoBuilder*) setOptionsBuilder:(PBServiceOptionsBuilder*) builderForValue;
  - (PBServiceDescriptorProtoBuilder*) mergeOptions:(PBServiceOptions*) value;
  - (PBServiceDescriptorProtoBuilder*) clearOptions;
  @end
  
  @interface PBMethodDescriptorProto : PBGeneratedMessage {
  @private
    BOOL hasName_:1;
    BOOL hasInputType_:1;
    BOOL hasOutputType_:1;
    BOOL hasOptions_:1;
    NSString* name;
    NSString* inputType;
    NSString* outputType;
    PBMethodOptions* options;
  }
  - (BOOL) hasName;
  - (BOOL) hasInputType;
  - (BOOL) hasOutputType;
  - (BOOL) hasOptions;
  @property (readonly, strong) NSString* name;
  @property (readonly, strong) NSString* inputType;
  @property (readonly, strong) NSString* outputType;
  @property (readonly, strong) PBMethodOptions* options;
  
  + (PBMethodDescriptorProto*) defaultInstance;
  - (PBMethodDescriptorProto*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBMethodDescriptorProtoBuilder*) builder;
  + (PBMethodDescriptorProtoBuilder*) builder;
  + (PBMethodDescriptorProtoBuilder*) builderWithPrototype:(PBMethodDescriptorProto*) prototype;
  - (PBMethodDescriptorProtoBuilder*) toBuilder;
  
  + (PBMethodDescriptorProto*) parseFromData:(NSData*) data;
  + (PBMethodDescriptorProto*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBMethodDescriptorProto*) parseFromInputStream:(NSInputStream*) input;
  + (PBMethodDescriptorProto*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBMethodDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBMethodDescriptorProto*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBMethodDescriptorProtoBuilder : PBGeneratedMessageBuilder {
  @private
    PBMethodDescriptorProto* result;
  }
  
  - (PBMethodDescriptorProto*) defaultInstance;
  
  - (PBMethodDescriptorProtoBuilder*) clear;
  - (PBMethodDescriptorProtoBuilder*) clone;
  
  - (PBMethodDescriptorProto*) build;
  - (PBMethodDescriptorProto*) buildPartial;
  
  - (PBMethodDescriptorProtoBuilder*) mergeFrom:(PBMethodDescriptorProto*) other;
  - (PBMethodDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBMethodDescriptorProtoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasName;
  - (NSString*) name;
  - (PBMethodDescriptorProtoBuilder*) setName:(NSString*) value;
  - (PBMethodDescriptorProtoBuilder*) clearName;
  
  - (BOOL) hasInputType;
  - (NSString*) inputType;
  - (PBMethodDescriptorProtoBuilder*) setInputType:(NSString*) value;
  - (PBMethodDescriptorProtoBuilder*) clearInputType;
  
  - (BOOL) hasOutputType;
  - (NSString*) outputType;
  - (PBMethodDescriptorProtoBuilder*) setOutputType:(NSString*) value;
  - (PBMethodDescriptorProtoBuilder*) clearOutputType;
  
  - (BOOL) hasOptions;
  - (PBMethodOptions*) options;
  - (PBMethodDescriptorProtoBuilder*) setOptions:(PBMethodOptions*) value;
  - (PBMethodDescriptorProtoBuilder*) setOptionsBuilder:(PBMethodOptionsBuilder*) builderForValue;
  - (PBMethodDescriptorProtoBuilder*) mergeOptions:(PBMethodOptions*) value;
  - (PBMethodDescriptorProtoBuilder*) clearOptions;
  @end
  
  @interface PBFileOptions : PBExtendableMessage {
  @private
    BOOL hasJavaMultipleFiles_:1;
    BOOL hasJavaGenerateEqualsAndHash_:1;
    BOOL hasCcGenericServices_:1;
    BOOL hasJavaGenericServices_:1;
    BOOL hasPyGenericServices_:1;
    BOOL hasJavaPackage_:1;
    BOOL hasJavaOuterClassname_:1;
    BOOL hasOptimizeFor_:1;
    BOOL javaMultipleFiles_:1;
    BOOL javaGenerateEqualsAndHash_:1;
    BOOL ccGenericServices_:1;
    BOOL javaGenericServices_:1;
    BOOL pyGenericServices_:1;
    NSString* javaPackage;
    NSString* javaOuterClassname;
    PBFileOptionsOptimizeMode optimizeFor;
    PBAppendableArray * uninterpretedOptionArray;
  }
  - (BOOL) hasJavaPackage;
  - (BOOL) hasJavaOuterClassname;
  - (BOOL) hasJavaMultipleFiles;
  - (BOOL) hasJavaGenerateEqualsAndHash;
  - (BOOL) hasOptimizeFor;
  - (BOOL) hasCcGenericServices;
  - (BOOL) hasJavaGenericServices;
  - (BOOL) hasPyGenericServices;
  @property (readonly, strong) NSString* javaPackage;
  @property (readonly, strong) NSString* javaOuterClassname;
  - (BOOL) javaMultipleFiles;
  - (BOOL) javaGenerateEqualsAndHash;
  @property (readonly) PBFileOptionsOptimizeMode optimizeFor;
  - (BOOL) ccGenericServices;
  - (BOOL) javaGenericServices;
  - (BOOL) pyGenericServices;
  @property (readonly, strong) PBArray * uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  
  + (PBFileOptions*) defaultInstance;
  - (PBFileOptions*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBFileOptionsBuilder*) builder;
  + (PBFileOptionsBuilder*) builder;
  + (PBFileOptionsBuilder*) builderWithPrototype:(PBFileOptions*) prototype;
  - (PBFileOptionsBuilder*) toBuilder;
  
  + (PBFileOptions*) parseFromData:(NSData*) data;
  + (PBFileOptions*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFileOptions*) parseFromInputStream:(NSInputStream*) input;
  + (PBFileOptions*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFileOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBFileOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBFileOptionsBuilder : PBExtendableMessageBuilder {
  @private
    PBFileOptions* result;
  }
  
  - (PBFileOptions*) defaultInstance;
  
  - (PBFileOptionsBuilder*) clear;
  - (PBFileOptionsBuilder*) clone;
  
  - (PBFileOptions*) build;
  - (PBFileOptions*) buildPartial;
  
  - (PBFileOptionsBuilder*) mergeFrom:(PBFileOptions*) other;
  - (PBFileOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBFileOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasJavaPackage;
  - (NSString*) javaPackage;
  - (PBFileOptionsBuilder*) setJavaPackage:(NSString*) value;
  - (PBFileOptionsBuilder*) clearJavaPackage;
  
  - (BOOL) hasJavaOuterClassname;
  - (NSString*) javaOuterClassname;
  - (PBFileOptionsBuilder*) setJavaOuterClassname:(NSString*) value;
  - (PBFileOptionsBuilder*) clearJavaOuterClassname;
  
  - (BOOL) hasJavaMultipleFiles;
  - (BOOL) javaMultipleFiles;
  - (PBFileOptionsBuilder*) setJavaMultipleFiles:(BOOL) value;
  - (PBFileOptionsBuilder*) clearJavaMultipleFiles;
  
  - (BOOL) hasJavaGenerateEqualsAndHash;
  - (BOOL) javaGenerateEqualsAndHash;
  - (PBFileOptionsBuilder*) setJavaGenerateEqualsAndHash:(BOOL) value;
  - (PBFileOptionsBuilder*) clearJavaGenerateEqualsAndHash;
  
  - (BOOL) hasOptimizeFor;
  - (PBFileOptionsOptimizeMode) optimizeFor;
  - (PBFileOptionsBuilder*) setOptimizeFor:(PBFileOptionsOptimizeMode) value;
  - (PBFileOptionsBuilder*) clearOptimizeFor;
  
  - (BOOL) hasCcGenericServices;
  - (BOOL) ccGenericServices;
  - (PBFileOptionsBuilder*) setCcGenericServices:(BOOL) value;
  - (PBFileOptionsBuilder*) clearCcGenericServices;
  
  - (BOOL) hasJavaGenericServices;
  - (BOOL) javaGenericServices;
  - (PBFileOptionsBuilder*) setJavaGenericServices:(BOOL) value;
  - (PBFileOptionsBuilder*) clearJavaGenericServices;
  
  - (BOOL) hasPyGenericServices;
  - (BOOL) pyGenericServices;
  - (PBFileOptionsBuilder*) setPyGenericServices:(BOOL) value;
  - (PBFileOptionsBuilder*) clearPyGenericServices;
  
  - (PBAppendableArray *)uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  - (PBFileOptionsBuilder *)addUninterpretedOption:(PBUninterpretedOption*)value;
  - (PBFileOptionsBuilder *)setUninterpretedOptionArray:(NSArray *)array;
  - (PBFileOptionsBuilder *)setUninterpretedOptionValues:(const PBUninterpretedOption* __strong *)values count:(NSUInteger)count;
  - (PBFileOptionsBuilder *)clearUninterpretedOption;
  @end
  
  @interface PBMessageOptions : PBExtendableMessage {
  @private
    BOOL hasMessageSetWireFormat_:1;
    BOOL hasNoStandardDescriptorAccessor_:1;
    BOOL messageSetWireFormat_:1;
    BOOL noStandardDescriptorAccessor_:1;
    PBAppendableArray * uninterpretedOptionArray;
  }
  - (BOOL) hasMessageSetWireFormat;
  - (BOOL) hasNoStandardDescriptorAccessor;
  - (BOOL) messageSetWireFormat;
  - (BOOL) noStandardDescriptorAccessor;
  @property (readonly, strong) PBArray * uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  
  + (PBMessageOptions*) defaultInstance;
  - (PBMessageOptions*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBMessageOptionsBuilder*) builder;
  + (PBMessageOptionsBuilder*) builder;
  + (PBMessageOptionsBuilder*) builderWithPrototype:(PBMessageOptions*) prototype;
  - (PBMessageOptionsBuilder*) toBuilder;
  
  + (PBMessageOptions*) parseFromData:(NSData*) data;
  + (PBMessageOptions*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBMessageOptions*) parseFromInputStream:(NSInputStream*) input;
  + (PBMessageOptions*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBMessageOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBMessageOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBMessageOptionsBuilder : PBExtendableMessageBuilder {
  @private
    PBMessageOptions* result;
  }
  
  - (PBMessageOptions*) defaultInstance;
  
  - (PBMessageOptionsBuilder*) clear;
  - (PBMessageOptionsBuilder*) clone;
  
  - (PBMessageOptions*) build;
  - (PBMessageOptions*) buildPartial;
  
  - (PBMessageOptionsBuilder*) mergeFrom:(PBMessageOptions*) other;
  - (PBMessageOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBMessageOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasMessageSetWireFormat;
  - (BOOL) messageSetWireFormat;
  - (PBMessageOptionsBuilder*) setMessageSetWireFormat:(BOOL) value;
  - (PBMessageOptionsBuilder*) clearMessageSetWireFormat;
  
  - (BOOL) hasNoStandardDescriptorAccessor;
  - (BOOL) noStandardDescriptorAccessor;
  - (PBMessageOptionsBuilder*) setNoStandardDescriptorAccessor:(BOOL) value;
  - (PBMessageOptionsBuilder*) clearNoStandardDescriptorAccessor;
  
  - (PBAppendableArray *)uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  - (PBMessageOptionsBuilder *)addUninterpretedOption:(PBUninterpretedOption*)value;
  - (PBMessageOptionsBuilder *)setUninterpretedOptionArray:(NSArray *)array;
  - (PBMessageOptionsBuilder *)setUninterpretedOptionValues:(const PBUninterpretedOption* __strong *)values count:(NSUInteger)count;
  - (PBMessageOptionsBuilder *)clearUninterpretedOption;
  @end
  
  @interface PBFieldOptions : PBExtendableMessage {
  @private
    BOOL hasPacked_:1;
    BOOL hasDeprecated_:1;
    BOOL hasExperimentalMapKey_:1;
    BOOL hasCtype_:1;
    BOOL packed_:1;
    BOOL deprecated_:1;
    NSString* experimentalMapKey;
    PBFieldOptionsCType ctype;
    PBAppendableArray * uninterpretedOptionArray;
  }
  - (BOOL) hasCtype;
  - (BOOL) hasPacked;
  - (BOOL) hasDeprecated;
  - (BOOL) hasExperimentalMapKey;
  @property (readonly) PBFieldOptionsCType ctype;
  - (BOOL) packed;
  - (BOOL) deprecated;
  @property (readonly, strong) NSString* experimentalMapKey;
  @property (readonly, strong) PBArray * uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  
  + (PBFieldOptions*) defaultInstance;
  - (PBFieldOptions*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBFieldOptionsBuilder*) builder;
  + (PBFieldOptionsBuilder*) builder;
  + (PBFieldOptionsBuilder*) builderWithPrototype:(PBFieldOptions*) prototype;
  - (PBFieldOptionsBuilder*) toBuilder;
  
  + (PBFieldOptions*) parseFromData:(NSData*) data;
  + (PBFieldOptions*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFieldOptions*) parseFromInputStream:(NSInputStream*) input;
  + (PBFieldOptions*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBFieldOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBFieldOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBFieldOptionsBuilder : PBExtendableMessageBuilder {
  @private
    PBFieldOptions* result;
  }
  
  - (PBFieldOptions*) defaultInstance;
  
  - (PBFieldOptionsBuilder*) clear;
  - (PBFieldOptionsBuilder*) clone;
  
  - (PBFieldOptions*) build;
  - (PBFieldOptions*) buildPartial;
  
  - (PBFieldOptionsBuilder*) mergeFrom:(PBFieldOptions*) other;
  - (PBFieldOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBFieldOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasCtype;
  - (PBFieldOptionsCType) ctype;
  - (PBFieldOptionsBuilder*) setCtype:(PBFieldOptionsCType) value;
  - (PBFieldOptionsBuilder*) clearCtype;
  
  - (BOOL) hasPacked;
  - (BOOL) packed;
  - (PBFieldOptionsBuilder*) setPacked:(BOOL) value;
  - (PBFieldOptionsBuilder*) clearPacked;
  
  - (BOOL) hasDeprecated;
  - (BOOL) deprecated;
  - (PBFieldOptionsBuilder*) setDeprecated:(BOOL) value;
  - (PBFieldOptionsBuilder*) clearDeprecated;
  
  - (BOOL) hasExperimentalMapKey;
  - (NSString*) experimentalMapKey;
  - (PBFieldOptionsBuilder*) setExperimentalMapKey:(NSString*) value;
  - (PBFieldOptionsBuilder*) clearExperimentalMapKey;
  
  - (PBAppendableArray *)uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  - (PBFieldOptionsBuilder *)addUninterpretedOption:(PBUninterpretedOption*)value;
  - (PBFieldOptionsBuilder *)setUninterpretedOptionArray:(NSArray *)array;
  - (PBFieldOptionsBuilder *)setUninterpretedOptionValues:(const PBUninterpretedOption* __strong *)values count:(NSUInteger)count;
  - (PBFieldOptionsBuilder *)clearUninterpretedOption;
  @end
  
  @interface PBEnumOptions : PBExtendableMessage {
  @private
    PBAppendableArray * uninterpretedOptionArray;
  }
  @property (readonly, strong) PBArray * uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  
  + (PBEnumOptions*) defaultInstance;
  - (PBEnumOptions*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBEnumOptionsBuilder*) builder;
  + (PBEnumOptionsBuilder*) builder;
  + (PBEnumOptionsBuilder*) builderWithPrototype:(PBEnumOptions*) prototype;
  - (PBEnumOptionsBuilder*) toBuilder;
  
  + (PBEnumOptions*) parseFromData:(NSData*) data;
  + (PBEnumOptions*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBEnumOptions*) parseFromInputStream:(NSInputStream*) input;
  + (PBEnumOptions*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBEnumOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBEnumOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBEnumOptionsBuilder : PBExtendableMessageBuilder {
  @private
    PBEnumOptions* result;
  }
  
  - (PBEnumOptions*) defaultInstance;
  
  - (PBEnumOptionsBuilder*) clear;
  - (PBEnumOptionsBuilder*) clone;
  
  - (PBEnumOptions*) build;
  - (PBEnumOptions*) buildPartial;
  
  - (PBEnumOptionsBuilder*) mergeFrom:(PBEnumOptions*) other;
  - (PBEnumOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBEnumOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (PBAppendableArray *)uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  - (PBEnumOptionsBuilder *)addUninterpretedOption:(PBUninterpretedOption*)value;
  - (PBEnumOptionsBuilder *)setUninterpretedOptionArray:(NSArray *)array;
  - (PBEnumOptionsBuilder *)setUninterpretedOptionValues:(const PBUninterpretedOption* __strong *)values count:(NSUInteger)count;
  - (PBEnumOptionsBuilder *)clearUninterpretedOption;
  @end
  
  @interface PBEnumValueOptions : PBExtendableMessage {
  @private
    PBAppendableArray * uninterpretedOptionArray;
  }
  @property (readonly, strong) PBArray * uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  
  + (PBEnumValueOptions*) defaultInstance;
  - (PBEnumValueOptions*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBEnumValueOptionsBuilder*) builder;
  + (PBEnumValueOptionsBuilder*) builder;
  + (PBEnumValueOptionsBuilder*) builderWithPrototype:(PBEnumValueOptions*) prototype;
  - (PBEnumValueOptionsBuilder*) toBuilder;
  
  + (PBEnumValueOptions*) parseFromData:(NSData*) data;
  + (PBEnumValueOptions*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBEnumValueOptions*) parseFromInputStream:(NSInputStream*) input;
  + (PBEnumValueOptions*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBEnumValueOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBEnumValueOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBEnumValueOptionsBuilder : PBExtendableMessageBuilder {
  @private
    PBEnumValueOptions* result;
  }
  
  - (PBEnumValueOptions*) defaultInstance;
  
  - (PBEnumValueOptionsBuilder*) clear;
  - (PBEnumValueOptionsBuilder*) clone;
  
  - (PBEnumValueOptions*) build;
  - (PBEnumValueOptions*) buildPartial;
  
  - (PBEnumValueOptionsBuilder*) mergeFrom:(PBEnumValueOptions*) other;
  - (PBEnumValueOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBEnumValueOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (PBAppendableArray *)uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  - (PBEnumValueOptionsBuilder *)addUninterpretedOption:(PBUninterpretedOption*)value;
  - (PBEnumValueOptionsBuilder *)setUninterpretedOptionArray:(NSArray *)array;
  - (PBEnumValueOptionsBuilder *)setUninterpretedOptionValues:(const PBUninterpretedOption* __strong *)values count:(NSUInteger)count;
  - (PBEnumValueOptionsBuilder *)clearUninterpretedOption;
  @end
  
  @interface PBServiceOptions : PBExtendableMessage {
  @private
    PBAppendableArray * uninterpretedOptionArray;
  }
  @property (readonly, strong) PBArray * uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  
  + (PBServiceOptions*) defaultInstance;
  - (PBServiceOptions*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBServiceOptionsBuilder*) builder;
  + (PBServiceOptionsBuilder*) builder;
  + (PBServiceOptionsBuilder*) builderWithPrototype:(PBServiceOptions*) prototype;
  - (PBServiceOptionsBuilder*) toBuilder;
  
  + (PBServiceOptions*) parseFromData:(NSData*) data;
  + (PBServiceOptions*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBServiceOptions*) parseFromInputStream:(NSInputStream*) input;
  + (PBServiceOptions*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBServiceOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBServiceOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBServiceOptionsBuilder : PBExtendableMessageBuilder {
  @private
    PBServiceOptions* result;
  }
  
  - (PBServiceOptions*) defaultInstance;
  
  - (PBServiceOptionsBuilder*) clear;
  - (PBServiceOptionsBuilder*) clone;
  
  - (PBServiceOptions*) build;
  - (PBServiceOptions*) buildPartial;
  
  - (PBServiceOptionsBuilder*) mergeFrom:(PBServiceOptions*) other;
  - (PBServiceOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBServiceOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (PBAppendableArray *)uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  - (PBServiceOptionsBuilder *)addUninterpretedOption:(PBUninterpretedOption*)value;
  - (PBServiceOptionsBuilder *)setUninterpretedOptionArray:(NSArray *)array;
  - (PBServiceOptionsBuilder *)setUninterpretedOptionValues:(const PBUninterpretedOption* __strong *)values count:(NSUInteger)count;
  - (PBServiceOptionsBuilder *)clearUninterpretedOption;
  @end
  
  @interface PBMethodOptions : PBExtendableMessage {
  @private
    PBAppendableArray * uninterpretedOptionArray;
  }
  @property (readonly, strong) PBArray * uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  
  + (PBMethodOptions*) defaultInstance;
  - (PBMethodOptions*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBMethodOptionsBuilder*) builder;
  + (PBMethodOptionsBuilder*) builder;
  + (PBMethodOptionsBuilder*) builderWithPrototype:(PBMethodOptions*) prototype;
  - (PBMethodOptionsBuilder*) toBuilder;
  
  + (PBMethodOptions*) parseFromData:(NSData*) data;
  + (PBMethodOptions*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBMethodOptions*) parseFromInputStream:(NSInputStream*) input;
  + (PBMethodOptions*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBMethodOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBMethodOptions*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBMethodOptionsBuilder : PBExtendableMessageBuilder {
  @private
    PBMethodOptions* result;
  }
  
  - (PBMethodOptions*) defaultInstance;
  
  - (PBMethodOptionsBuilder*) clear;
  - (PBMethodOptionsBuilder*) clone;
  
  - (PBMethodOptions*) build;
  - (PBMethodOptions*) buildPartial;
  
  - (PBMethodOptionsBuilder*) mergeFrom:(PBMethodOptions*) other;
  - (PBMethodOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBMethodOptionsBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (PBAppendableArray *)uninterpretedOption;
  - (PBUninterpretedOption*)uninterpretedOptionAtIndex:(NSUInteger)index;
  - (PBMethodOptionsBuilder *)addUninterpretedOption:(PBUninterpretedOption*)value;
  - (PBMethodOptionsBuilder *)setUninterpretedOptionArray:(NSArray *)array;
  - (PBMethodOptionsBuilder *)setUninterpretedOptionValues:(const PBUninterpretedOption* __strong *)values count:(NSUInteger)count;
  - (PBMethodOptionsBuilder *)clearUninterpretedOption;
  @end
  
  @interface PBUninterpretedOption : PBGeneratedMessage {
  @private
    BOOL hasDoubleValue_:1;
    BOOL hasNegativeIntValue_:1;
    BOOL hasPositiveIntValue_:1;
    BOOL hasIdentifierValue_:1;
    BOOL hasAggregateValue_:1;
    BOOL hasStringValue_:1;
    Float64 doubleValue;
    long long negativeIntValue;
    unsigned long long positiveIntValue;
    NSString* identifierValue;
    NSString* aggregateValue;
    NSData* stringValue;
    PBAppendableArray * nameArray;
  }
  - (BOOL) hasIdentifierValue;
  - (BOOL) hasPositiveIntValue;
  - (BOOL) hasNegativeIntValue;
  - (BOOL) hasDoubleValue;
  - (BOOL) hasStringValue;
  - (BOOL) hasAggregateValue;
  @property (readonly, strong) PBArray * name;
  @property (readonly, strong) NSString* identifierValue;
  @property (readonly) unsigned long long positiveIntValue;
  @property (readonly) long long negativeIntValue;
  @property (readonly) Float64 doubleValue;
  @property (readonly, strong) NSData* stringValue;
  @property (readonly, strong) NSString* aggregateValue;
  - (PBUninterpretedOptionNamePart*)nameAtIndex:(NSUInteger)index;
  
  + (PBUninterpretedOption*) defaultInstance;
  - (PBUninterpretedOption*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBUninterpretedOptionBuilder*) builder;
  + (PBUninterpretedOptionBuilder*) builder;
  + (PBUninterpretedOptionBuilder*) builderWithPrototype:(PBUninterpretedOption*) prototype;
  - (PBUninterpretedOptionBuilder*) toBuilder;
  
  + (PBUninterpretedOption*) parseFromData:(NSData*) data;
  + (PBUninterpretedOption*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBUninterpretedOption*) parseFromInputStream:(NSInputStream*) input;
  + (PBUninterpretedOption*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBUninterpretedOption*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBUninterpretedOption*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBUninterpretedOptionNamePart : PBGeneratedMessage {
  @private
    BOOL hasIsExtension_:1;
    BOOL hasNamePart_:1;
    BOOL isExtension_:1;
    NSString* namePart;
  }
  - (BOOL) hasNamePart;
  - (BOOL) hasIsExtension;
  @property (readonly, strong) NSString* namePart;
  - (BOOL) isExtension;
  
  + (PBUninterpretedOptionNamePart*) defaultInstance;
  - (PBUninterpretedOptionNamePart*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBUninterpretedOptionNamePartBuilder*) builder;
  + (PBUninterpretedOptionNamePartBuilder*) builder;
  + (PBUninterpretedOptionNamePartBuilder*) builderWithPrototype:(PBUninterpretedOptionNamePart*) prototype;
  - (PBUninterpretedOptionNamePartBuilder*) toBuilder;
  
  + (PBUninterpretedOptionNamePart*) parseFromData:(NSData*) data;
  + (PBUninterpretedOptionNamePart*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBUninterpretedOptionNamePart*) parseFromInputStream:(NSInputStream*) input;
  + (PBUninterpretedOptionNamePart*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBUninterpretedOptionNamePart*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBUninterpretedOptionNamePart*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBUninterpretedOptionNamePartBuilder : PBGeneratedMessageBuilder {
  @private
    PBUninterpretedOptionNamePart* result;
  }
  
  - (PBUninterpretedOptionNamePart*) defaultInstance;
  
  - (PBUninterpretedOptionNamePartBuilder*) clear;
  - (PBUninterpretedOptionNamePartBuilder*) clone;
  
  - (PBUninterpretedOptionNamePart*) build;
  - (PBUninterpretedOptionNamePart*) buildPartial;
  
  - (PBUninterpretedOptionNamePartBuilder*) mergeFrom:(PBUninterpretedOptionNamePart*) other;
  - (PBUninterpretedOptionNamePartBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBUninterpretedOptionNamePartBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (BOOL) hasNamePart;
  - (NSString*) namePart;
  - (PBUninterpretedOptionNamePartBuilder*) setNamePart:(NSString*) value;
  - (PBUninterpretedOptionNamePartBuilder*) clearNamePart;
  
  - (BOOL) hasIsExtension;
  - (BOOL) isExtension;
  - (PBUninterpretedOptionNamePartBuilder*) setIsExtension:(BOOL) value;
  - (PBUninterpretedOptionNamePartBuilder*) clearIsExtension;
  @end
  
  @interface PBUninterpretedOptionBuilder : PBGeneratedMessageBuilder {
  @private
    PBUninterpretedOption* result;
  }
  
  - (PBUninterpretedOption*) defaultInstance;
  
  - (PBUninterpretedOptionBuilder*) clear;
  - (PBUninterpretedOptionBuilder*) clone;
  
  - (PBUninterpretedOption*) build;
  - (PBUninterpretedOption*) buildPartial;
  
  - (PBUninterpretedOptionBuilder*) mergeFrom:(PBUninterpretedOption*) other;
  - (PBUninterpretedOptionBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBUninterpretedOptionBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (PBAppendableArray *)name;
  - (PBUninterpretedOptionNamePart*)nameAtIndex:(NSUInteger)index;
  - (PBUninterpretedOptionBuilder *)addName:(PBUninterpretedOptionNamePart*)value;
  - (PBUninterpretedOptionBuilder *)setNameArray:(NSArray *)array;
  - (PBUninterpretedOptionBuilder *)setNameValues:(const PBUninterpretedOptionNamePart* __strong *)values count:(NSUInteger)count;
  - (PBUninterpretedOptionBuilder *)clearName;
  
  - (BOOL) hasIdentifierValue;
  - (NSString*) identifierValue;
  - (PBUninterpretedOptionBuilder*) setIdentifierValue:(NSString*) value;
  - (PBUninterpretedOptionBuilder*) clearIdentifierValue;
  
  - (BOOL) hasPositiveIntValue;
  - (unsigned long long) positiveIntValue;
  - (PBUninterpretedOptionBuilder*) setPositiveIntValue:(unsigned long long) value;
  - (PBUninterpretedOptionBuilder*) clearPositiveIntValue;
  
  - (BOOL) hasNegativeIntValue;
  - (long long) negativeIntValue;
  - (PBUninterpretedOptionBuilder*) setNegativeIntValue:(long long) value;
  - (PBUninterpretedOptionBuilder*) clearNegativeIntValue;
  
  - (BOOL) hasDoubleValue;
  - (Float64) doubleValue;
  - (PBUninterpretedOptionBuilder*) setDoubleValue:(Float64) value;
  - (PBUninterpretedOptionBuilder*) clearDoubleValue;
  
  - (BOOL) hasStringValue;
  - (NSData*) stringValue;
  - (PBUninterpretedOptionBuilder*) setStringValue:(NSData*) value;
  - (PBUninterpretedOptionBuilder*) clearStringValue;
  
  - (BOOL) hasAggregateValue;
  - (NSString*) aggregateValue;
  - (PBUninterpretedOptionBuilder*) setAggregateValue:(NSString*) value;
  - (PBUninterpretedOptionBuilder*) clearAggregateValue;
  @end
  
  @interface PBSourceCodeInfo : PBGeneratedMessage {
  @private
    PBAppendableArray * locationArray;
  }
  @property (readonly, strong) PBArray * location;
  - (PBSourceCodeInfoLocation*)locationAtIndex:(NSUInteger)index;
  
  + (PBSourceCodeInfo*) defaultInstance;
  - (PBSourceCodeInfo*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBSourceCodeInfoBuilder*) builder;
  + (PBSourceCodeInfoBuilder*) builder;
  + (PBSourceCodeInfoBuilder*) builderWithPrototype:(PBSourceCodeInfo*) prototype;
  - (PBSourceCodeInfoBuilder*) toBuilder;
  
  + (PBSourceCodeInfo*) parseFromData:(NSData*) data;
  + (PBSourceCodeInfo*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBSourceCodeInfo*) parseFromInputStream:(NSInputStream*) input;
  + (PBSourceCodeInfo*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBSourceCodeInfo*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBSourceCodeInfo*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBSourceCodeInfoLocation : PBGeneratedMessage {
  @private
    PBAppendableArray * pathArray;
    NSInteger pathMemoizedSerializedSize;
    PBAppendableArray * spanArray;
    NSInteger spanMemoizedSerializedSize;
  }
  @property (readonly, strong) PBArray * path;
  @property (readonly, strong) PBArray * span;
  - (long)pathAtIndex:(NSUInteger)index;
  - (long)spanAtIndex:(NSUInteger)index;
  
  + (PBSourceCodeInfoLocation*) defaultInstance;
  - (PBSourceCodeInfoLocation*) defaultInstance;
  
  - (BOOL) isInitialized;
  - (void) writeToCodedOutputStream:(PBCodedOutputStream*) output;
  - (PBSourceCodeInfoLocationBuilder*) builder;
  + (PBSourceCodeInfoLocationBuilder*) builder;
  + (PBSourceCodeInfoLocationBuilder*) builderWithPrototype:(PBSourceCodeInfoLocation*) prototype;
  - (PBSourceCodeInfoLocationBuilder*) toBuilder;
  
  + (PBSourceCodeInfoLocation*) parseFromData:(NSData*) data;
  + (PBSourceCodeInfoLocation*) parseFromData:(NSData*) data extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBSourceCodeInfoLocation*) parseFromInputStream:(NSInputStream*) input;
  + (PBSourceCodeInfoLocation*) parseFromInputStream:(NSInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  + (PBSourceCodeInfoLocation*) parseFromCodedInputStream:(PBCodedInputStream*) input;
  + (PBSourceCodeInfoLocation*) parseFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  @end
  
  @interface PBSourceCodeInfoLocationBuilder : PBGeneratedMessageBuilder {
  @private
    PBSourceCodeInfoLocation* result;
  }
  
  - (PBSourceCodeInfoLocation*) defaultInstance;
  
  - (PBSourceCodeInfoLocationBuilder*) clear;
  - (PBSourceCodeInfoLocationBuilder*) clone;
  
  - (PBSourceCodeInfoLocation*) build;
  - (PBSourceCodeInfoLocation*) buildPartial;
  
  - (PBSourceCodeInfoLocationBuilder*) mergeFrom:(PBSourceCodeInfoLocation*) other;
  - (PBSourceCodeInfoLocationBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBSourceCodeInfoLocationBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (PBAppendableArray *)path;
  - (long)pathAtIndex:(NSUInteger)index;
  - (PBSourceCodeInfoLocationBuilder *)addPath:(long)value;
  - (PBSourceCodeInfoLocationBuilder *)setPathArray:(NSArray *)array;
  - (PBSourceCodeInfoLocationBuilder *)setPathValues:(const long *)values count:(NSUInteger)count;
  - (PBSourceCodeInfoLocationBuilder *)clearPath;
  
  - (PBAppendableArray *)span;
  - (long)spanAtIndex:(NSUInteger)index;
  - (PBSourceCodeInfoLocationBuilder *)addSpan:(long)value;
  - (PBSourceCodeInfoLocationBuilder *)setSpanArray:(NSArray *)array;
  - (PBSourceCodeInfoLocationBuilder *)setSpanValues:(const long *)values count:(NSUInteger)count;
  - (PBSourceCodeInfoLocationBuilder *)clearSpan;
  @end
  
  @interface PBSourceCodeInfoBuilder : PBGeneratedMessageBuilder {
  @private
    PBSourceCodeInfo* result;
  }
  
  - (PBSourceCodeInfo*) defaultInstance;
  
  - (PBSourceCodeInfoBuilder*) clear;
  - (PBSourceCodeInfoBuilder*) clone;
  
  - (PBSourceCodeInfo*) build;
  - (PBSourceCodeInfo*) buildPartial;
  
  - (PBSourceCodeInfoBuilder*) mergeFrom:(PBSourceCodeInfo*) other;
  - (PBSourceCodeInfoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input;
  - (PBSourceCodeInfoBuilder*) mergeFromCodedInputStream:(PBCodedInputStream*) input extensionRegistry:(PBExtensionRegistry*) extensionRegistry;
  
  - (PBAppendableArray *)location;
  - (PBSourceCodeInfoLocation*)locationAtIndex:(NSUInteger)index;
  - (PBSourceCodeInfoBuilder *)addLocation:(PBSourceCodeInfoLocation*)value;
  - (PBSourceCodeInfoBuilder *)setLocationArray:(NSArray *)array;
  - (PBSourceCodeInfoBuilder *)setLocationValues:(const PBSourceCodeInfoLocation* __strong *)values count:(NSUInteger)count;
  - (PBSourceCodeInfoBuilder *)clearLocation;
  @end
  
  
  // @@protoc_insertion_point(global_scope)
  