Package akka.protobuf
Class DescriptorProtos.FieldOptions
- java.lang.Object
-
- akka.protobuf.AbstractMessageLite
-
- akka.protobuf.AbstractMessage
-
- akka.protobuf.GeneratedMessage
-
- akka.protobuf.GeneratedMessage.ExtendableMessage<DescriptorProtos.FieldOptions>
-
- akka.protobuf.DescriptorProtos.FieldOptions
-
- All Implemented Interfaces:
DescriptorProtos.FieldOptionsOrBuilder
,GeneratedMessage.ExtendableMessageOrBuilder<DescriptorProtos.FieldOptions>
,Message
,MessageLite
,MessageLiteOrBuilder
,MessageOrBuilder
,java.io.Serializable
- Enclosing class:
- DescriptorProtos
public static final class DescriptorProtos.FieldOptions extends GeneratedMessage.ExtendableMessage<DescriptorProtos.FieldOptions> implements DescriptorProtos.FieldOptionsOrBuilder
Protobuf typegoogle.protobuf.FieldOptions
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DescriptorProtos.FieldOptions.Builder
Protobuf typegoogle.protobuf.FieldOptions
static class
DescriptorProtos.FieldOptions.CType
Protobuf enumgoogle.protobuf.FieldOptions.CType
-
Nested classes/interfaces inherited from class akka.protobuf.GeneratedMessage.ExtendableMessage
GeneratedMessage.ExtendableMessage.ExtensionWriter
-
Nested classes/interfaces inherited from class akka.protobuf.GeneratedMessage
GeneratedMessage.BuilderParent, GeneratedMessage.ExtendableBuilder<MessageType extends GeneratedMessage.ExtendableMessage,BuilderType extends GeneratedMessage.ExtendableBuilder>, GeneratedMessage.ExtendableMessage<MessageType extends GeneratedMessage.ExtendableMessage>, GeneratedMessage.ExtendableMessageOrBuilder<MessageType extends GeneratedMessage.ExtendableMessage>, GeneratedMessage.FieldAccessorTable, GeneratedMessage.GeneratedExtension<ContainingType extends Message,Type>
-
-
Field Summary
Fields Modifier and Type Field Description static int
CTYPE_FIELD_NUMBER
static int
DEPRECATED_FIELD_NUMBER
static int
EXPERIMENTAL_MAP_KEY_FIELD_NUMBER
static int
LAZY_FIELD_NUMBER
static int
PACKED_FIELD_NUMBER
static Parser<DescriptorProtos.FieldOptions>
PARSER
static int
UNINTERPRETED_OPTION_FIELD_NUMBER
static int
WEAK_FIELD_NUMBER
-
Fields inherited from class akka.protobuf.GeneratedMessage
alwaysUseFieldBuilders
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description DescriptorProtos.FieldOptions.CType
getCtype()
optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];
static DescriptorProtos.FieldOptions
getDefaultInstance()
DescriptorProtos.FieldOptions
getDefaultInstanceForType()
Get an instance of the type with no fields set.boolean
getDeprecated()
optional bool deprecated = 3 [default = false];
static Descriptors.Descriptor
getDescriptor()
java.lang.String
getExperimentalMapKey()
optional string experimental_map_key = 9;
ByteString
getExperimentalMapKeyBytes()
optional string experimental_map_key = 9;
boolean
getLazy()
optional bool lazy = 5 [default = false];
boolean
getPacked()
optional bool packed = 2;
Parser<DescriptorProtos.FieldOptions>
getParserForType()
Gets the parser for a message of the same type as this message.int
getSerializedSize()
Get the number of bytes required to encode this message.DescriptorProtos.UninterpretedOption
getUninterpretedOption(int index)
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
int
getUninterpretedOptionCount()
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
java.util.List<DescriptorProtos.UninterpretedOption>
getUninterpretedOptionList()
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
DescriptorProtos.UninterpretedOptionOrBuilder
getUninterpretedOptionOrBuilder(int index)
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
java.util.List<? extends DescriptorProtos.UninterpretedOptionOrBuilder>
getUninterpretedOptionOrBuilderList()
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
UnknownFieldSet
getUnknownFields()
Get theUnknownFieldSet
for this message.boolean
getWeak()
optional bool weak = 10 [default = false];
boolean
hasCtype()
optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];
boolean
hasDeprecated()
optional bool deprecated = 3 [default = false];
boolean
hasExperimentalMapKey()
optional string experimental_map_key = 9;
boolean
hasLazy()
optional bool lazy = 5 [default = false];
boolean
hasPacked()
optional bool packed = 2;
boolean
hasWeak()
optional bool weak = 10 [default = false];
protected GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable()
Get the FieldAccessorTable for this type.boolean
isInitialized()
Returns true if all required fields in the message and all embedded messages are set, false otherwise.static DescriptorProtos.FieldOptions.Builder
newBuilder()
static DescriptorProtos.FieldOptions.Builder
newBuilder(DescriptorProtos.FieldOptions prototype)
DescriptorProtos.FieldOptions.Builder
newBuilderForType()
Constructs a new builder for a message of the same type as this message.protected DescriptorProtos.FieldOptions.Builder
newBuilderForType(GeneratedMessage.BuilderParent parent)
static DescriptorProtos.FieldOptions
parseDelimitedFrom(java.io.InputStream input)
static DescriptorProtos.FieldOptions
parseDelimitedFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)
static DescriptorProtos.FieldOptions
parseFrom(byte[] data)
static DescriptorProtos.FieldOptions
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
static DescriptorProtos.FieldOptions
parseFrom(ByteString data)
static DescriptorProtos.FieldOptions
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
static DescriptorProtos.FieldOptions
parseFrom(CodedInputStream input)
static DescriptorProtos.FieldOptions
parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
static DescriptorProtos.FieldOptions
parseFrom(java.io.InputStream input)
static DescriptorProtos.FieldOptions
parseFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry)
DescriptorProtos.FieldOptions.Builder
toBuilder()
Constructs a builder initialized with the current message.protected java.lang.Object
writeReplace()
Replaces this object in the output stream with a serialized form.void
writeTo(CodedOutputStream output)
Serializes the message and writes it tooutput
.-
Methods inherited from class akka.protobuf.GeneratedMessage.ExtendableMessage
extensionsAreInitialized, extensionsSerializedSize, extensionsSerializedSizeAsMessageSet, getAllFields, getExtension, getExtension, getExtensionCount, getExtensionFields, getField, getRepeatedField, getRepeatedFieldCount, hasExtension, hasField, makeExtensionsImmutable, newExtensionWriter, newMessageSetExtensionWriter, parseUnknownField
-
Methods inherited from class akka.protobuf.GeneratedMessage
getDescriptorForType, newFileScopedGeneratedExtension, newMessageScopedGeneratedExtension
-
Methods inherited from class akka.protobuf.AbstractMessage
equals, findInitializationErrors, getInitializationErrorString, hashBoolean, hashCode, hashEnum, hashEnumList, hashFields, hashLong, toString
-
Methods inherited from class akka.protobuf.AbstractMessageLite
toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface akka.protobuf.GeneratedMessage.ExtendableMessageOrBuilder
getExtension, getExtension, getExtensionCount, hasExtension
-
Methods inherited from interface akka.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from interface akka.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getRepeatedField, getRepeatedFieldCount, hasField
-
-
-
-
Field Detail
-
PARSER
public static Parser<DescriptorProtos.FieldOptions> PARSER
-
CTYPE_FIELD_NUMBER
public static final int CTYPE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
PACKED_FIELD_NUMBER
public static final int PACKED_FIELD_NUMBER
- See Also:
- Constant Field Values
-
LAZY_FIELD_NUMBER
public static final int LAZY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
DEPRECATED_FIELD_NUMBER
public static final int DEPRECATED_FIELD_NUMBER
- See Also:
- Constant Field Values
-
EXPERIMENTAL_MAP_KEY_FIELD_NUMBER
public static final int EXPERIMENTAL_MAP_KEY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
WEAK_FIELD_NUMBER
public static final int WEAK_FIELD_NUMBER
- See Also:
- Constant Field Values
-
UNINTERPRETED_OPTION_FIELD_NUMBER
public static final int UNINTERPRETED_OPTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
-
Method Detail
-
getDefaultInstance
public static DescriptorProtos.FieldOptions getDefaultInstance()
-
getDefaultInstanceForType
public DescriptorProtos.FieldOptions getDefaultInstanceForType()
Description copied from interface:MessageLiteOrBuilder
Get an instance of the type with no fields set. Because no fields are set, all getters for singular fields will return default values and repeated fields will appear empty. This may or may not be a singleton. This differs from thegetDefaultInstance()
method of generated message classes in that this method is an abstract method of theMessageLite
interface whereasgetDefaultInstance()
is a static method of a specific class. They return the same thing.- Specified by:
getDefaultInstanceForType
in interfaceMessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfaceMessageOrBuilder
-
getUnknownFields
public final UnknownFieldSet getUnknownFields()
Description copied from interface:MessageOrBuilder
Get theUnknownFieldSet
for this message.- Specified by:
getUnknownFields
in interfaceMessageOrBuilder
- Overrides:
getUnknownFields
in classGeneratedMessage
-
getDescriptor
public static final Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
Description copied from class:GeneratedMessage
Get the FieldAccessorTable for this type. We can't have the message class pass this in to the constructor because of bootstrapping trouble with DescriptorProtos.- Specified by:
internalGetFieldAccessorTable
in classGeneratedMessage
-
getParserForType
public Parser<DescriptorProtos.FieldOptions> getParserForType()
Description copied from interface:MessageLite
Gets the parser for a message of the same type as this message.- Specified by:
getParserForType
in interfaceMessage
- Specified by:
getParserForType
in interfaceMessageLite
- Overrides:
getParserForType
in classGeneratedMessage
-
hasCtype
public boolean hasCtype()
optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];
The ctype option instructs the C++ code generator to use a different representation of the field than it normally would. See the specific options below. This option is not yet implemented in the open source release -- sorry, we'll try to include it in a future version!
- Specified by:
hasCtype
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getCtype
public DescriptorProtos.FieldOptions.CType getCtype()
optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING];
The ctype option instructs the C++ code generator to use a different representation of the field than it normally would. See the specific options below. This option is not yet implemented in the open source release -- sorry, we'll try to include it in a future version!
- Specified by:
getCtype
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
hasPacked
public boolean hasPacked()
optional bool packed = 2;
The packed option can be enabled for repeated primitive fields to enable a more efficient representation on the wire. Rather than repeatedly writing the tag and type for each element, the entire array is encoded as a single length-delimited blob.
- Specified by:
hasPacked
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getPacked
public boolean getPacked()
optional bool packed = 2;
The packed option can be enabled for repeated primitive fields to enable a more efficient representation on the wire. Rather than repeatedly writing the tag and type for each element, the entire array is encoded as a single length-delimited blob.
- Specified by:
getPacked
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
hasLazy
public boolean hasLazy()
optional bool lazy = 5 [default = false];
Should this field be parsed lazily? Lazy applies only to message-type fields. It means that when the outer message is initially parsed, the inner message's contents will not be parsed but instead stored in encoded form. The inner message will actually be parsed when it is first accessed. This is only a hint. Implementations are free to choose whether to use eager or lazy parsing regardless of the value of this option. However, setting this option true suggests that the protocol author believes that using lazy parsing on this field is worth the additional bookkeeping overhead typically needed to implement it. This option does not affect the public interface of any generated code; all method signatures remain the same. Furthermore, thread-safety of the interface is not affected by this option; const methods remain safe to call from multiple threads concurrently, while non-const methods continue to require exclusive access. Note that implementations may choose not to check required fields within a lazy sub-message. That is, calling IsInitialized() on the outher message may return true even if the inner message has missing required fields. This is necessary because otherwise the inner message would have to be parsed in order to perform the check, defeating the purpose of lazy parsing. An implementation which chooses not to check required fields must be consistent about it. That is, for any particular sub-message, the implementation must either *always* check its required fields, or *never* check its required fields, regardless of whether or not the message has been parsed.
- Specified by:
hasLazy
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getLazy
public boolean getLazy()
optional bool lazy = 5 [default = false];
Should this field be parsed lazily? Lazy applies only to message-type fields. It means that when the outer message is initially parsed, the inner message's contents will not be parsed but instead stored in encoded form. The inner message will actually be parsed when it is first accessed. This is only a hint. Implementations are free to choose whether to use eager or lazy parsing regardless of the value of this option. However, setting this option true suggests that the protocol author believes that using lazy parsing on this field is worth the additional bookkeeping overhead typically needed to implement it. This option does not affect the public interface of any generated code; all method signatures remain the same. Furthermore, thread-safety of the interface is not affected by this option; const methods remain safe to call from multiple threads concurrently, while non-const methods continue to require exclusive access. Note that implementations may choose not to check required fields within a lazy sub-message. That is, calling IsInitialized() on the outher message may return true even if the inner message has missing required fields. This is necessary because otherwise the inner message would have to be parsed in order to perform the check, defeating the purpose of lazy parsing. An implementation which chooses not to check required fields must be consistent about it. That is, for any particular sub-message, the implementation must either *always* check its required fields, or *never* check its required fields, regardless of whether or not the message has been parsed.
- Specified by:
getLazy
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
hasDeprecated
public boolean hasDeprecated()
optional bool deprecated = 3 [default = false];
Is this field deprecated? Depending on the target platform, this can emit Deprecated annotations for accessors, or it will be completely ignored; in the very least, this is a formalization for deprecating fields.
- Specified by:
hasDeprecated
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getDeprecated
public boolean getDeprecated()
optional bool deprecated = 3 [default = false];
Is this field deprecated? Depending on the target platform, this can emit Deprecated annotations for accessors, or it will be completely ignored; in the very least, this is a formalization for deprecating fields.
- Specified by:
getDeprecated
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
hasExperimentalMapKey
public boolean hasExperimentalMapKey()
optional string experimental_map_key = 9;
EXPERIMENTAL. DO NOT USE. For "map" fields, the name of the field in the enclosed type that is the key for this map. For example, suppose we have: message Item { required string name = 1; required string value = 2; } message Config { repeated Item items = 1 [experimental_map_key="name"]; } In this situation, the map key for Item will be set to "name". TODO: Fully-implement this, then remove the "experimental_" prefix.
- Specified by:
hasExperimentalMapKey
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getExperimentalMapKey
public java.lang.String getExperimentalMapKey()
optional string experimental_map_key = 9;
EXPERIMENTAL. DO NOT USE. For "map" fields, the name of the field in the enclosed type that is the key for this map. For example, suppose we have: message Item { required string name = 1; required string value = 2; } message Config { repeated Item items = 1 [experimental_map_key="name"]; } In this situation, the map key for Item will be set to "name". TODO: Fully-implement this, then remove the "experimental_" prefix.
- Specified by:
getExperimentalMapKey
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getExperimentalMapKeyBytes
public ByteString getExperimentalMapKeyBytes()
optional string experimental_map_key = 9;
EXPERIMENTAL. DO NOT USE. For "map" fields, the name of the field in the enclosed type that is the key for this map. For example, suppose we have: message Item { required string name = 1; required string value = 2; } message Config { repeated Item items = 1 [experimental_map_key="name"]; } In this situation, the map key for Item will be set to "name". TODO: Fully-implement this, then remove the "experimental_" prefix.
- Specified by:
getExperimentalMapKeyBytes
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
hasWeak
public boolean hasWeak()
optional bool weak = 10 [default = false];
For Google-internal migration only. Do not use.
- Specified by:
hasWeak
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getWeak
public boolean getWeak()
optional bool weak = 10 [default = false];
For Google-internal migration only. Do not use.
- Specified by:
getWeak
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getUninterpretedOptionList
public java.util.List<DescriptorProtos.UninterpretedOption> getUninterpretedOptionList()
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
The parser stores options it doesn't recognize here. See above.
- Specified by:
getUninterpretedOptionList
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getUninterpretedOptionOrBuilderList
public java.util.List<? extends DescriptorProtos.UninterpretedOptionOrBuilder> getUninterpretedOptionOrBuilderList()
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
The parser stores options it doesn't recognize here. See above.
- Specified by:
getUninterpretedOptionOrBuilderList
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getUninterpretedOptionCount
public int getUninterpretedOptionCount()
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
The parser stores options it doesn't recognize here. See above.
- Specified by:
getUninterpretedOptionCount
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getUninterpretedOption
public DescriptorProtos.UninterpretedOption getUninterpretedOption(int index)
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
The parser stores options it doesn't recognize here. See above.
- Specified by:
getUninterpretedOption
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
getUninterpretedOptionOrBuilder
public DescriptorProtos.UninterpretedOptionOrBuilder getUninterpretedOptionOrBuilder(int index)
repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999;
The parser stores options it doesn't recognize here. See above.
- Specified by:
getUninterpretedOptionOrBuilder
in interfaceDescriptorProtos.FieldOptionsOrBuilder
-
isInitialized
public final boolean isInitialized()
Description copied from interface:MessageLiteOrBuilder
Returns true if all required fields in the message and all embedded messages are set, false otherwise.- Specified by:
isInitialized
in interfaceMessageLiteOrBuilder
- Overrides:
isInitialized
in classGeneratedMessage.ExtendableMessage<DescriptorProtos.FieldOptions>
-
writeTo
public void writeTo(CodedOutputStream output) throws java.io.IOException
Description copied from interface:MessageLite
Serializes the message and writes it tooutput
. This does not flush or close the stream.- Specified by:
writeTo
in interfaceMessageLite
- Overrides:
writeTo
in classAbstractMessage
- Throws:
java.io.IOException
-
getSerializedSize
public int getSerializedSize()
Description copied from interface:MessageLite
Get the number of bytes required to encode this message. The result is only computed on the first call and memoized after that.- Specified by:
getSerializedSize
in interfaceMessageLite
- Overrides:
getSerializedSize
in classAbstractMessage
-
writeReplace
protected java.lang.Object writeReplace() throws java.io.ObjectStreamException
Description copied from class:GeneratedMessage
Replaces this object in the output stream with a serialized form. Part of Java's serialization magic. Generated sub-classes must override this method by callingreturn super.writeReplace();
- Overrides:
writeReplace
in classGeneratedMessage
- Returns:
- a SerializedForm of this message
- Throws:
java.io.ObjectStreamException
-
parseFrom
public static DescriptorProtos.FieldOptions parseFrom(ByteString data) throws InvalidProtocolBufferException
- Throws:
InvalidProtocolBufferException
-
parseFrom
public static DescriptorProtos.FieldOptions parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry) throws InvalidProtocolBufferException
- Throws:
InvalidProtocolBufferException
-
parseFrom
public static DescriptorProtos.FieldOptions parseFrom(byte[] data) throws InvalidProtocolBufferException
- Throws:
InvalidProtocolBufferException
-
parseFrom
public static DescriptorProtos.FieldOptions parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry) throws InvalidProtocolBufferException
- Throws:
InvalidProtocolBufferException
-
parseFrom
public static DescriptorProtos.FieldOptions parseFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static DescriptorProtos.FieldOptions parseFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static DescriptorProtos.FieldOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static DescriptorProtos.FieldOptions parseDelimitedFrom(java.io.InputStream input, ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static DescriptorProtos.FieldOptions parseFrom(CodedInputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static DescriptorProtos.FieldOptions parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
newBuilder
public static DescriptorProtos.FieldOptions.Builder newBuilder()
-
newBuilderForType
public DescriptorProtos.FieldOptions.Builder newBuilderForType()
Description copied from interface:MessageLite
Constructs a new builder for a message of the same type as this message.- Specified by:
newBuilderForType
in interfaceMessage
- Specified by:
newBuilderForType
in interfaceMessageLite
-
newBuilder
public static DescriptorProtos.FieldOptions.Builder newBuilder(DescriptorProtos.FieldOptions prototype)
-
toBuilder
public DescriptorProtos.FieldOptions.Builder toBuilder()
Description copied from interface:MessageLite
Constructs a builder initialized with the current message. Use this to derive a new message from the current one.- Specified by:
toBuilder
in interfaceMessage
- Specified by:
toBuilder
in interfaceMessageLite
-
newBuilderForType
protected DescriptorProtos.FieldOptions.Builder newBuilderForType(GeneratedMessage.BuilderParent parent)
- Specified by:
newBuilderForType
in classGeneratedMessage
-
-