public void MergeFrom(pb::CodedInputStream input)
        {
            uint tag;

            while ((tag = input.ReadTag()) != 0)
            {
                switch (tag)
                {
                default:
                    input.SkipLastField();
                    break;

                case 10: {
                    if (amount_ == null)
                    {
                        amount_ = new global::HOLMS.Types.Primitive.MonetaryAmount();
                    }
                    input.ReadMessage(amount_);
                    break;
                }

                case 16: {
                    IsCanceled = input.ReadBool();
                    break;
                }

                case 24: {
                    paymentType_ = (global::HOLMS.Types.Folio.PaymentType)input.ReadEnum();
                    break;
                }

                case 34: {
                    if (receivedBy_ == null)
                    {
                        receivedBy_ = new global::HOLMS.Types.IAM.StaffMemberIndicator();
                    }
                    input.ReadMessage(receivedBy_);
                    break;
                }

                case 42: {
                    if (postedAt_ == null)
                    {
                        postedAt_ = new global::Google.Protobuf.WellKnownTypes.Timestamp();
                    }
                    input.ReadMessage(postedAt_);
                    break;
                }

                case 50: {
                    if (entityId_ == null)
                    {
                        entityId_ = new global::HOLMS.Types.Folio.FolioCheckCashPaymentIndicator();
                    }
                    input.ReadMessage(entityId_);
                    break;
                }
                }
            }
        }
        public void MergeFrom(pb::CodedInputStream input)
        {
            uint tag;

            while ((tag = input.ReadTag()) != 0)
            {
                switch (tag)
                {
                default:
                    input.SkipLastField();
                    break;

                case 10: {
                    if (postedAt_ == null)
                    {
                        postedAt_ = new global::Google.Protobuf.WellKnownTypes.Timestamp();
                    }
                    input.ReadMessage(postedAt_);
                    break;
                }

                case 18: {
                    if (amount_ == null)
                    {
                        amount_ = new global::HOLMS.Types.Primitive.MonetaryAmount();
                    }
                    input.ReadMessage(amount_);
                    break;
                }

                case 26: {
                    Narration = input.ReadString();
                    break;
                }

                case 32: {
                    paymentType_ = (global::HOLMS.Types.Folio.PaymentType)input.ReadEnum();
                    break;
                }

                case 40: {
                    IsCancellable = input.ReadBool();
                    break;
                }

                case 50: {
                    if (sale_ == null)
                    {
                        sale_ = new global::HOLMS.Types.Money.Cards.Transactions.PaymentCardSaleIndicator();
                    }
                    input.ReadMessage(sale_);
                    break;
                }
                }
            }
        }