| // Generated by the protocol buffer compiler. DO NOT EDIT! |
| // source: money.proto |
| |
| package com.google.type; |
| |
| /** |
| * <pre> |
| * Represents an amount of money with its currency type. |
| * </pre> |
| * |
| * Protobuf type {@code google.type.Money} |
| */ |
| public final class Money extends |
| com.google.protobuf.GeneratedMessageV3 implements |
| // @@protoc_insertion_point(message_implements:google.type.Money) |
| MoneyOrBuilder { |
| private static final long serialVersionUID = 0L; |
| // Use Money.newBuilder() to construct. |
| private Money(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { |
| super(builder); |
| } |
| private Money() { |
| currencyCode_ = ""; |
| } |
| |
| @java.lang.Override |
| @SuppressWarnings({"unused"}) |
| protected java.lang.Object newInstance( |
| UnusedPrivateParameter unused) { |
| return new Money(); |
| } |
| |
| public static final com.google.protobuf.Descriptors.Descriptor |
| getDescriptor() { |
| return com.google.type.MoneyProto.internal_static_google_type_Money_descriptor; |
| } |
| |
| @java.lang.Override |
| protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable |
| internalGetFieldAccessorTable() { |
| return com.google.type.MoneyProto.internal_static_google_type_Money_fieldAccessorTable |
| .ensureFieldAccessorsInitialized( |
| com.google.type.Money.class, com.google.type.Money.Builder.class); |
| } |
| |
| public static final int CURRENCY_CODE_FIELD_NUMBER = 1; |
| @SuppressWarnings("serial") |
| private volatile java.lang.Object currencyCode_ = ""; |
| /** |
| * <pre> |
| * The three-letter currency code defined in ISO 4217. |
| * </pre> |
| * |
| * <code>string currency_code = 1;</code> |
| * @return The currencyCode. |
| */ |
| @java.lang.Override |
| public java.lang.String getCurrencyCode() { |
| java.lang.Object ref = currencyCode_; |
| if (ref instanceof java.lang.String) { |
| return (java.lang.String) ref; |
| } else { |
| com.google.protobuf.ByteString bs = |
| (com.google.protobuf.ByteString) ref; |
| java.lang.String s = bs.toStringUtf8(); |
| currencyCode_ = s; |
| return s; |
| } |
| } |
| /** |
| * <pre> |
| * The three-letter currency code defined in ISO 4217. |
| * </pre> |
| * |
| * <code>string currency_code = 1;</code> |
| * @return The bytes for currencyCode. |
| */ |
| @java.lang.Override |
| public com.google.protobuf.ByteString |
| getCurrencyCodeBytes() { |
| java.lang.Object ref = currencyCode_; |
| if (ref instanceof java.lang.String) { |
| com.google.protobuf.ByteString b = |
| com.google.protobuf.ByteString.copyFromUtf8( |
| (java.lang.String) ref); |
| currencyCode_ = b; |
| return b; |
| } else { |
| return (com.google.protobuf.ByteString) ref; |
| } |
| } |
| |
| public static final int UNITS_FIELD_NUMBER = 2; |
| private long units_ = 0L; |
| /** |
| * <pre> |
| * The whole units of the amount. |
| * For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. |
| * </pre> |
| * |
| * <code>int64 units = 2;</code> |
| * @return The units. |
| */ |
| @java.lang.Override |
| public long getUnits() { |
| return units_; |
| } |
| |
| public static final int NANOS_FIELD_NUMBER = 3; |
| private int nanos_ = 0; |
| /** |
| * <pre> |
| * Number of nano (10^-9) units of the amount. |
| * The value must be between -999,999,999 and +999,999,999 inclusive. |
| * If `units` is positive, `nanos` must be positive or zero. |
| * If `units` is zero, `nanos` can be positive, zero, or negative. |
| * If `units` is negative, `nanos` must be negative or zero. |
| * For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. |
| * </pre> |
| * |
| * <code>int32 nanos = 3;</code> |
| * @return The nanos. |
| */ |
| @java.lang.Override |
| public int getNanos() { |
| return nanos_; |
| } |
| |
| private byte memoizedIsInitialized = -1; |
| @java.lang.Override |
| public final boolean isInitialized() { |
| byte isInitialized = memoizedIsInitialized; |
| if (isInitialized == 1) return true; |
| if (isInitialized == 0) return false; |
| |
| memoizedIsInitialized = 1; |
| return true; |
| } |
| |
| @java.lang.Override |
| public void writeTo(com.google.protobuf.CodedOutputStream output) |
| throws java.io.IOException { |
| if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(currencyCode_)) { |
| com.google.protobuf.GeneratedMessageV3.writeString(output, 1, currencyCode_); |
| } |
| if (units_ != 0L) { |
| output.writeInt64(2, units_); |
| } |
| if (nanos_ != 0) { |
| output.writeInt32(3, nanos_); |
| } |
| getUnknownFields().writeTo(output); |
| } |
| |
| @java.lang.Override |
| public int getSerializedSize() { |
| int size = memoizedSize; |
| if (size != -1) return size; |
| |
| size = 0; |
| if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(currencyCode_)) { |
| size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, currencyCode_); |
| } |
| if (units_ != 0L) { |
| size += com.google.protobuf.CodedOutputStream |
| .computeInt64Size(2, units_); |
| } |
| if (nanos_ != 0) { |
| size += com.google.protobuf.CodedOutputStream |
| .computeInt32Size(3, nanos_); |
| } |
| size += getUnknownFields().getSerializedSize(); |
| memoizedSize = size; |
| return size; |
| } |
| |
| @java.lang.Override |
| public boolean equals(final java.lang.Object obj) { |
| if (obj == this) { |
| return true; |
| } |
| if (!(obj instanceof com.google.type.Money)) { |
| return super.equals(obj); |
| } |
| com.google.type.Money other = (com.google.type.Money) obj; |
| |
| if (!getCurrencyCode() |
| .equals(other.getCurrencyCode())) return false; |
| if (getUnits() |
| != other.getUnits()) return false; |
| if (getNanos() |
| != other.getNanos()) return false; |
| if (!getUnknownFields().equals(other.getUnknownFields())) return false; |
| return true; |
| } |
| |
| @java.lang.Override |
| public int hashCode() { |
| if (memoizedHashCode != 0) { |
| return memoizedHashCode; |
| } |
| int hash = 41; |
| hash = (19 * hash) + getDescriptor().hashCode(); |
| hash = (37 * hash) + CURRENCY_CODE_FIELD_NUMBER; |
| hash = (53 * hash) + getCurrencyCode().hashCode(); |
| hash = (37 * hash) + UNITS_FIELD_NUMBER; |
| hash = (53 * hash) + com.google.protobuf.Internal.hashLong( |
| getUnits()); |
| hash = (37 * hash) + NANOS_FIELD_NUMBER; |
| hash = (53 * hash) + getNanos(); |
| hash = (29 * hash) + getUnknownFields().hashCode(); |
| memoizedHashCode = hash; |
| return hash; |
| } |
| |
| public static com.google.type.Money parseFrom( |
| java.nio.ByteBuffer data) |
| throws com.google.protobuf.InvalidProtocolBufferException { |
| return PARSER.parseFrom(data); |
| } |
| public static com.google.type.Money parseFrom( |
| java.nio.ByteBuffer data, |
| com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
| throws com.google.protobuf.InvalidProtocolBufferException { |
| return PARSER.parseFrom(data, extensionRegistry); |
| } |
| public static com.google.type.Money parseFrom( |
| com.google.protobuf.ByteString data) |
| throws com.google.protobuf.InvalidProtocolBufferException { |
| return PARSER.parseFrom(data); |
| } |
| public static com.google.type.Money parseFrom( |
| com.google.protobuf.ByteString data, |
| com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
| throws com.google.protobuf.InvalidProtocolBufferException { |
| return PARSER.parseFrom(data, extensionRegistry); |
| } |
| public static com.google.type.Money parseFrom(byte[] data) |
| throws com.google.protobuf.InvalidProtocolBufferException { |
| return PARSER.parseFrom(data); |
| } |
| public static com.google.type.Money parseFrom( |
| byte[] data, |
| com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
| throws com.google.protobuf.InvalidProtocolBufferException { |
| return PARSER.parseFrom(data, extensionRegistry); |
| } |
| public static com.google.type.Money parseFrom(java.io.InputStream input) |
| throws java.io.IOException { |
| return com.google.protobuf.GeneratedMessageV3 |
| .parseWithIOException(PARSER, input); |
| } |
| public static com.google.type.Money parseFrom( |
| java.io.InputStream input, |
| com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
| throws java.io.IOException { |
| return com.google.protobuf.GeneratedMessageV3 |
| .parseWithIOException(PARSER, input, extensionRegistry); |
| } |
| public static com.google.type.Money parseDelimitedFrom(java.io.InputStream input) |
| throws java.io.IOException { |
| return com.google.protobuf.GeneratedMessageV3 |
| .parseDelimitedWithIOException(PARSER, input); |
| } |
| public static com.google.type.Money parseDelimitedFrom( |
| java.io.InputStream input, |
| com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
| throws java.io.IOException { |
| return com.google.protobuf.GeneratedMessageV3 |
| .parseDelimitedWithIOException(PARSER, input, extensionRegistry); |
| } |
| public static com.google.type.Money parseFrom( |
| com.google.protobuf.CodedInputStream input) |
| throws java.io.IOException { |
| return com.google.protobuf.GeneratedMessageV3 |
| .parseWithIOException(PARSER, input); |
| } |
| public static com.google.type.Money parseFrom( |
| com.google.protobuf.CodedInputStream input, |
| com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
| throws java.io.IOException { |
| return com.google.protobuf.GeneratedMessageV3 |
| .parseWithIOException(PARSER, input, extensionRegistry); |
| } |
| |
| @java.lang.Override |
| public Builder newBuilderForType() { return newBuilder(); } |
| public static Builder newBuilder() { |
| return DEFAULT_INSTANCE.toBuilder(); |
| } |
| public static Builder newBuilder(com.google.type.Money prototype) { |
| return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); |
| } |
| @java.lang.Override |
| public Builder toBuilder() { |
| return this == DEFAULT_INSTANCE |
| ? new Builder() : new Builder().mergeFrom(this); |
| } |
| |
| @java.lang.Override |
| protected Builder newBuilderForType( |
| com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { |
| Builder builder = new Builder(parent); |
| return builder; |
| } |
| /** |
| * <pre> |
| * Represents an amount of money with its currency type. |
| * </pre> |
| * |
| * Protobuf type {@code google.type.Money} |
| */ |
| public static final class Builder extends |
| com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements |
| // @@protoc_insertion_point(builder_implements:google.type.Money) |
| com.google.type.MoneyOrBuilder { |
| public static final com.google.protobuf.Descriptors.Descriptor |
| getDescriptor() { |
| return com.google.type.MoneyProto.internal_static_google_type_Money_descriptor; |
| } |
| |
| @java.lang.Override |
| protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable |
| internalGetFieldAccessorTable() { |
| return com.google.type.MoneyProto.internal_static_google_type_Money_fieldAccessorTable |
| .ensureFieldAccessorsInitialized( |
| com.google.type.Money.class, com.google.type.Money.Builder.class); |
| } |
| |
| // Construct using com.google.type.Money.newBuilder() |
| private Builder() { |
| |
| } |
| |
| private Builder( |
| com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { |
| super(parent); |
| |
| } |
| @java.lang.Override |
| public Builder clear() { |
| super.clear(); |
| bitField0_ = 0; |
| currencyCode_ = ""; |
| units_ = 0L; |
| nanos_ = 0; |
| return this; |
| } |
| |
| @java.lang.Override |
| public com.google.protobuf.Descriptors.Descriptor |
| getDescriptorForType() { |
| return com.google.type.MoneyProto.internal_static_google_type_Money_descriptor; |
| } |
| |
| @java.lang.Override |
| public com.google.type.Money getDefaultInstanceForType() { |
| return com.google.type.Money.getDefaultInstance(); |
| } |
| |
| @java.lang.Override |
| public com.google.type.Money build() { |
| com.google.type.Money result = buildPartial(); |
| if (!result.isInitialized()) { |
| throw newUninitializedMessageException(result); |
| } |
| return result; |
| } |
| |
| @java.lang.Override |
| public com.google.type.Money buildPartial() { |
| com.google.type.Money result = new com.google.type.Money(this); |
| if (bitField0_ != 0) { buildPartial0(result); } |
| onBuilt(); |
| return result; |
| } |
| |
| private void buildPartial0(com.google.type.Money result) { |
| int from_bitField0_ = bitField0_; |
| if (((from_bitField0_ & 0x00000001) != 0)) { |
| result.currencyCode_ = currencyCode_; |
| } |
| if (((from_bitField0_ & 0x00000002) != 0)) { |
| result.units_ = units_; |
| } |
| if (((from_bitField0_ & 0x00000004) != 0)) { |
| result.nanos_ = nanos_; |
| } |
| } |
| |
| @java.lang.Override |
| public Builder mergeFrom(com.google.protobuf.Message other) { |
| if (other instanceof com.google.type.Money) { |
| return mergeFrom((com.google.type.Money)other); |
| } else { |
| super.mergeFrom(other); |
| return this; |
| } |
| } |
| |
| public Builder mergeFrom(com.google.type.Money other) { |
| if (other == com.google.type.Money.getDefaultInstance()) return this; |
| if (!other.getCurrencyCode().isEmpty()) { |
| currencyCode_ = other.currencyCode_; |
| bitField0_ |= 0x00000001; |
| onChanged(); |
| } |
| if (other.getUnits() != 0L) { |
| setUnits(other.getUnits()); |
| } |
| if (other.getNanos() != 0) { |
| setNanos(other.getNanos()); |
| } |
| this.mergeUnknownFields(other.getUnknownFields()); |
| onChanged(); |
| return this; |
| } |
| |
| @java.lang.Override |
| public final boolean isInitialized() { |
| return true; |
| } |
| |
| @java.lang.Override |
| public Builder mergeFrom( |
| com.google.protobuf.CodedInputStream input, |
| com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
| throws java.io.IOException { |
| if (extensionRegistry == null) { |
| throw new java.lang.NullPointerException(); |
| } |
| try { |
| boolean done = false; |
| while (!done) { |
| int tag = input.readTag(); |
| switch (tag) { |
| case 0: |
| done = true; |
| break; |
| case 10: { |
| currencyCode_ = input.readStringRequireUtf8(); |
| bitField0_ |= 0x00000001; |
| break; |
| } // case 10 |
| case 16: { |
| units_ = input.readInt64(); |
| bitField0_ |= 0x00000002; |
| break; |
| } // case 16 |
| case 24: { |
| nanos_ = input.readInt32(); |
| bitField0_ |= 0x00000004; |
| break; |
| } // case 24 |
| default: { |
| if (!super.parseUnknownField(input, extensionRegistry, tag)) { |
| done = true; // was an endgroup tag |
| } |
| break; |
| } // default: |
| } // switch (tag) |
| } // while (!done) |
| } catch (com.google.protobuf.InvalidProtocolBufferException e) { |
| throw e.unwrapIOException(); |
| } finally { |
| onChanged(); |
| } // finally |
| return this; |
| } |
| private int bitField0_; |
| |
| private java.lang.Object currencyCode_ = ""; |
| /** |
| * <pre> |
| * The three-letter currency code defined in ISO 4217. |
| * </pre> |
| * |
| * <code>string currency_code = 1;</code> |
| * @return The currencyCode. |
| */ |
| public java.lang.String getCurrencyCode() { |
| java.lang.Object ref = currencyCode_; |
| if (!(ref instanceof java.lang.String)) { |
| com.google.protobuf.ByteString bs = |
| (com.google.protobuf.ByteString) ref; |
| java.lang.String s = bs.toStringUtf8(); |
| currencyCode_ = s; |
| return s; |
| } else { |
| return (java.lang.String) ref; |
| } |
| } |
| /** |
| * <pre> |
| * The three-letter currency code defined in ISO 4217. |
| * </pre> |
| * |
| * <code>string currency_code = 1;</code> |
| * @return The bytes for currencyCode. |
| */ |
| public com.google.protobuf.ByteString |
| getCurrencyCodeBytes() { |
| java.lang.Object ref = currencyCode_; |
| if (ref instanceof String) { |
| com.google.protobuf.ByteString b = |
| com.google.protobuf.ByteString.copyFromUtf8( |
| (java.lang.String) ref); |
| currencyCode_ = b; |
| return b; |
| } else { |
| return (com.google.protobuf.ByteString) ref; |
| } |
| } |
| /** |
| * <pre> |
| * The three-letter currency code defined in ISO 4217. |
| * </pre> |
| * |
| * <code>string currency_code = 1;</code> |
| * @param value The currencyCode to set. |
| * @return This builder for chaining. |
| */ |
| public Builder setCurrencyCode( |
| java.lang.String value) { |
| if (value == null) { throw new NullPointerException(); } |
| currencyCode_ = value; |
| bitField0_ |= 0x00000001; |
| onChanged(); |
| return this; |
| } |
| /** |
| * <pre> |
| * The three-letter currency code defined in ISO 4217. |
| * </pre> |
| * |
| * <code>string currency_code = 1;</code> |
| * @return This builder for chaining. |
| */ |
| public Builder clearCurrencyCode() { |
| currencyCode_ = getDefaultInstance().getCurrencyCode(); |
| bitField0_ = (bitField0_ & ~0x00000001); |
| onChanged(); |
| return this; |
| } |
| /** |
| * <pre> |
| * The three-letter currency code defined in ISO 4217. |
| * </pre> |
| * |
| * <code>string currency_code = 1;</code> |
| * @param value The bytes for currencyCode to set. |
| * @return This builder for chaining. |
| */ |
| public Builder setCurrencyCodeBytes( |
| com.google.protobuf.ByteString value) { |
| if (value == null) { throw new NullPointerException(); } |
| checkByteStringIsUtf8(value); |
| currencyCode_ = value; |
| bitField0_ |= 0x00000001; |
| onChanged(); |
| return this; |
| } |
| |
| private long units_ ; |
| /** |
| * <pre> |
| * The whole units of the amount. |
| * For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. |
| * </pre> |
| * |
| * <code>int64 units = 2;</code> |
| * @return The units. |
| */ |
| @java.lang.Override |
| public long getUnits() { |
| return units_; |
| } |
| /** |
| * <pre> |
| * The whole units of the amount. |
| * For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. |
| * </pre> |
| * |
| * <code>int64 units = 2;</code> |
| * @param value The units to set. |
| * @return This builder for chaining. |
| */ |
| public Builder setUnits(long value) { |
| |
| units_ = value; |
| bitField0_ |= 0x00000002; |
| onChanged(); |
| return this; |
| } |
| /** |
| * <pre> |
| * The whole units of the amount. |
| * For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. |
| * </pre> |
| * |
| * <code>int64 units = 2;</code> |
| * @return This builder for chaining. |
| */ |
| public Builder clearUnits() { |
| bitField0_ = (bitField0_ & ~0x00000002); |
| units_ = 0L; |
| onChanged(); |
| return this; |
| } |
| |
| private int nanos_ ; |
| /** |
| * <pre> |
| * Number of nano (10^-9) units of the amount. |
| * The value must be between -999,999,999 and +999,999,999 inclusive. |
| * If `units` is positive, `nanos` must be positive or zero. |
| * If `units` is zero, `nanos` can be positive, zero, or negative. |
| * If `units` is negative, `nanos` must be negative or zero. |
| * For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. |
| * </pre> |
| * |
| * <code>int32 nanos = 3;</code> |
| * @return The nanos. |
| */ |
| @java.lang.Override |
| public int getNanos() { |
| return nanos_; |
| } |
| /** |
| * <pre> |
| * Number of nano (10^-9) units of the amount. |
| * The value must be between -999,999,999 and +999,999,999 inclusive. |
| * If `units` is positive, `nanos` must be positive or zero. |
| * If `units` is zero, `nanos` can be positive, zero, or negative. |
| * If `units` is negative, `nanos` must be negative or zero. |
| * For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. |
| * </pre> |
| * |
| * <code>int32 nanos = 3;</code> |
| * @param value The nanos to set. |
| * @return This builder for chaining. |
| */ |
| public Builder setNanos(int value) { |
| |
| nanos_ = value; |
| bitField0_ |= 0x00000004; |
| onChanged(); |
| return this; |
| } |
| /** |
| * <pre> |
| * Number of nano (10^-9) units of the amount. |
| * The value must be between -999,999,999 and +999,999,999 inclusive. |
| * If `units` is positive, `nanos` must be positive or zero. |
| * If `units` is zero, `nanos` can be positive, zero, or negative. |
| * If `units` is negative, `nanos` must be negative or zero. |
| * For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. |
| * </pre> |
| * |
| * <code>int32 nanos = 3;</code> |
| * @return This builder for chaining. |
| */ |
| public Builder clearNanos() { |
| bitField0_ = (bitField0_ & ~0x00000004); |
| nanos_ = 0; |
| onChanged(); |
| return this; |
| } |
| @java.lang.Override |
| public final Builder setUnknownFields( |
| final com.google.protobuf.UnknownFieldSet unknownFields) { |
| return super.setUnknownFields(unknownFields); |
| } |
| |
| @java.lang.Override |
| public final Builder mergeUnknownFields( |
| final com.google.protobuf.UnknownFieldSet unknownFields) { |
| return super.mergeUnknownFields(unknownFields); |
| } |
| |
| |
| // @@protoc_insertion_point(builder_scope:google.type.Money) |
| } |
| |
| // @@protoc_insertion_point(class_scope:google.type.Money) |
| private static final com.google.type.Money DEFAULT_INSTANCE; |
| static { |
| DEFAULT_INSTANCE = new com.google.type.Money(); |
| } |
| |
| public static com.google.type.Money getDefaultInstance() { |
| return DEFAULT_INSTANCE; |
| } |
| |
| private static final com.google.protobuf.Parser<Money> |
| PARSER = new com.google.protobuf.AbstractParser<Money>() { |
| @java.lang.Override |
| public Money parsePartialFrom( |
| com.google.protobuf.CodedInputStream input, |
| com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
| throws com.google.protobuf.InvalidProtocolBufferException { |
| Builder builder = newBuilder(); |
| try { |
| builder.mergeFrom(input, extensionRegistry); |
| } catch (com.google.protobuf.InvalidProtocolBufferException e) { |
| throw e.setUnfinishedMessage(builder.buildPartial()); |
| } catch (com.google.protobuf.UninitializedMessageException e) { |
| throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); |
| } catch (java.io.IOException e) { |
| throw new com.google.protobuf.InvalidProtocolBufferException(e) |
| .setUnfinishedMessage(builder.buildPartial()); |
| } |
| return builder.buildPartial(); |
| } |
| }; |
| |
| public static com.google.protobuf.Parser<Money> parser() { |
| return PARSER; |
| } |
| |
| @java.lang.Override |
| public com.google.protobuf.Parser<Money> getParserForType() { |
| return PARSER; |
| } |
| |
| @java.lang.Override |
| public com.google.type.Money getDefaultInstanceForType() { |
| return DEFAULT_INSTANCE; |
| } |
| |
| } |
| |