From 2316e2550454fcac535cf149c558c76fb2582877 Mon Sep 17 00:00:00 2001 From: Ahmet Alp Balkan Date: Wed, 20 Jun 2018 12:20:39 -0700 Subject: [PATCH] change Product.id to string Signed-off-by: Ahmet Alp Balkan --- pb/demo.proto | 4 +- src/productcatalogservice/genproto/demo.pb.go | 362 +++++++++--------- src/productcatalogservice/server.go | 6 +- src/productcatalogservice/server_test.go | 4 +- 4 files changed, 188 insertions(+), 188 deletions(-) diff --git a/pb/demo.proto b/pb/demo.proto index 03cf1d3..6a627b5 100644 --- a/pb/demo.proto +++ b/pb/demo.proto @@ -59,7 +59,7 @@ service ProductCatalogService { } message Product { - int32 id = 1; + string id = 1; string name = 2; string description = 3; string picture = 4; @@ -71,7 +71,7 @@ message ListProductsResponse { } message GetProductRequest { - int32 id = 1; + string id = 1; } message SearchProductsRequest { diff --git a/src/productcatalogservice/genproto/demo.pb.go b/src/productcatalogservice/genproto/demo.pb.go index 4358e1d..0b82382 100644 --- a/src/productcatalogservice/genproto/demo.pb.go +++ b/src/productcatalogservice/genproto/demo.pb.go @@ -24,8 +24,8 @@ var _ = math.Inf const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package type CartItem struct { - ProductId string `protobuf:"bytes,1,opt,name=product_id,json=productId,proto3" json:"product_id,omitempty"` - Quantity int32 `protobuf:"varint,2,opt,name=quantity,proto3" json:"quantity,omitempty"` + ProductId string `protobuf:"bytes,1,opt,name=product_id,json=productId" json:"product_id,omitempty"` + Quantity int32 `protobuf:"varint,2,opt,name=quantity" json:"quantity,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -35,7 +35,7 @@ func (m *CartItem) Reset() { *m = CartItem{} } func (m *CartItem) String() string { return proto.CompactTextString(m) } func (*CartItem) ProtoMessage() {} func (*CartItem) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{0} + return fileDescriptor_demo_957798eed1991a59, []int{0} } func (m *CartItem) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CartItem.Unmarshal(m, b) @@ -70,8 +70,8 @@ func (m *CartItem) GetQuantity() int32 { } type AddItemRequest struct { - UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` - Item *CartItem `protobuf:"bytes,2,opt,name=item,proto3" json:"item,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId" json:"user_id,omitempty"` + Item *CartItem `protobuf:"bytes,2,opt,name=item" json:"item,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -81,7 +81,7 @@ func (m *AddItemRequest) Reset() { *m = AddItemRequest{} } func (m *AddItemRequest) String() string { return proto.CompactTextString(m) } func (*AddItemRequest) ProtoMessage() {} func (*AddItemRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{1} + return fileDescriptor_demo_957798eed1991a59, []int{1} } func (m *AddItemRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_AddItemRequest.Unmarshal(m, b) @@ -116,7 +116,7 @@ func (m *AddItemRequest) GetItem() *CartItem { } type EmptyCartRequest struct { - UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId" json:"user_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -126,7 +126,7 @@ func (m *EmptyCartRequest) Reset() { *m = EmptyCartRequest{} } func (m *EmptyCartRequest) String() string { return proto.CompactTextString(m) } func (*EmptyCartRequest) ProtoMessage() {} func (*EmptyCartRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{2} + return fileDescriptor_demo_957798eed1991a59, []int{2} } func (m *EmptyCartRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_EmptyCartRequest.Unmarshal(m, b) @@ -154,7 +154,7 @@ func (m *EmptyCartRequest) GetUserId() string { } type GetCartRequest struct { - UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId" json:"user_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -164,7 +164,7 @@ func (m *GetCartRequest) Reset() { *m = GetCartRequest{} } func (m *GetCartRequest) String() string { return proto.CompactTextString(m) } func (*GetCartRequest) ProtoMessage() {} func (*GetCartRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{3} + return fileDescriptor_demo_957798eed1991a59, []int{3} } func (m *GetCartRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetCartRequest.Unmarshal(m, b) @@ -192,8 +192,8 @@ func (m *GetCartRequest) GetUserId() string { } type Cart struct { - UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` - Items []*CartItem `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId" json:"user_id,omitempty"` + Items []*CartItem `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -203,7 +203,7 @@ func (m *Cart) Reset() { *m = Cart{} } func (m *Cart) String() string { return proto.CompactTextString(m) } func (*Cart) ProtoMessage() {} func (*Cart) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{4} + return fileDescriptor_demo_957798eed1991a59, []int{4} } func (m *Cart) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Cart.Unmarshal(m, b) @@ -247,7 +247,7 @@ func (m *Empty) Reset() { *m = Empty{} } func (m *Empty) String() string { return proto.CompactTextString(m) } func (*Empty) ProtoMessage() {} func (*Empty) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{5} + return fileDescriptor_demo_957798eed1991a59, []int{5} } func (m *Empty) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Empty.Unmarshal(m, b) @@ -268,8 +268,8 @@ func (m *Empty) XXX_DiscardUnknown() { var xxx_messageInfo_Empty proto.InternalMessageInfo type ListRecommendationsRequest struct { - UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` - ProductIds []string `protobuf:"bytes,2,rep,name=product_ids,json=productIds,proto3" json:"product_ids,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId" json:"user_id,omitempty"` + ProductIds []string `protobuf:"bytes,2,rep,name=product_ids,json=productIds" json:"product_ids,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -279,7 +279,7 @@ func (m *ListRecommendationsRequest) Reset() { *m = ListRecommendationsR func (m *ListRecommendationsRequest) String() string { return proto.CompactTextString(m) } func (*ListRecommendationsRequest) ProtoMessage() {} func (*ListRecommendationsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{6} + return fileDescriptor_demo_957798eed1991a59, []int{6} } func (m *ListRecommendationsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListRecommendationsRequest.Unmarshal(m, b) @@ -314,7 +314,7 @@ func (m *ListRecommendationsRequest) GetProductIds() []string { } type ListRecommendationsResponse struct { - ProductIds []string `protobuf:"bytes,1,rep,name=product_ids,json=productIds,proto3" json:"product_ids,omitempty"` + ProductIds []string `protobuf:"bytes,1,rep,name=product_ids,json=productIds" json:"product_ids,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -324,7 +324,7 @@ func (m *ListRecommendationsResponse) Reset() { *m = ListRecommendations func (m *ListRecommendationsResponse) String() string { return proto.CompactTextString(m) } func (*ListRecommendationsResponse) ProtoMessage() {} func (*ListRecommendationsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{7} + return fileDescriptor_demo_957798eed1991a59, []int{7} } func (m *ListRecommendationsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListRecommendationsResponse.Unmarshal(m, b) @@ -352,11 +352,11 @@ func (m *ListRecommendationsResponse) GetProductIds() []string { } type Product struct { - Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` - Picture string `protobuf:"bytes,4,opt,name=picture,proto3" json:"picture,omitempty"` - PriceUsd *MoneyAmount `protobuf:"bytes,5,opt,name=price_usd,json=priceUsd,proto3" json:"price_usd,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + Description string `protobuf:"bytes,3,opt,name=description" json:"description,omitempty"` + Picture string `protobuf:"bytes,4,opt,name=picture" json:"picture,omitempty"` + PriceUsd *MoneyAmount `protobuf:"bytes,5,opt,name=price_usd,json=priceUsd" json:"price_usd,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -366,7 +366,7 @@ func (m *Product) Reset() { *m = Product{} } func (m *Product) String() string { return proto.CompactTextString(m) } func (*Product) ProtoMessage() {} func (*Product) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{8} + return fileDescriptor_demo_957798eed1991a59, []int{8} } func (m *Product) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Product.Unmarshal(m, b) @@ -386,11 +386,11 @@ func (m *Product) XXX_DiscardUnknown() { var xxx_messageInfo_Product proto.InternalMessageInfo -func (m *Product) GetId() int32 { +func (m *Product) GetId() string { if m != nil { return m.Id } - return 0 + return "" } func (m *Product) GetName() string { @@ -422,7 +422,7 @@ func (m *Product) GetPriceUsd() *MoneyAmount { } type ListProductsResponse struct { - Products []*Product `protobuf:"bytes,1,rep,name=products,proto3" json:"products,omitempty"` + Products []*Product `protobuf:"bytes,1,rep,name=products" json:"products,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -432,7 +432,7 @@ func (m *ListProductsResponse) Reset() { *m = ListProductsResponse{} } func (m *ListProductsResponse) String() string { return proto.CompactTextString(m) } func (*ListProductsResponse) ProtoMessage() {} func (*ListProductsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{9} + return fileDescriptor_demo_957798eed1991a59, []int{9} } func (m *ListProductsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListProductsResponse.Unmarshal(m, b) @@ -460,7 +460,7 @@ func (m *ListProductsResponse) GetProducts() []*Product { } type GetProductRequest struct { - Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -470,7 +470,7 @@ func (m *GetProductRequest) Reset() { *m = GetProductRequest{} } func (m *GetProductRequest) String() string { return proto.CompactTextString(m) } func (*GetProductRequest) ProtoMessage() {} func (*GetProductRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{10} + return fileDescriptor_demo_957798eed1991a59, []int{10} } func (m *GetProductRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetProductRequest.Unmarshal(m, b) @@ -490,15 +490,15 @@ func (m *GetProductRequest) XXX_DiscardUnknown() { var xxx_messageInfo_GetProductRequest proto.InternalMessageInfo -func (m *GetProductRequest) GetId() int32 { +func (m *GetProductRequest) GetId() string { if m != nil { return m.Id } - return 0 + return "" } type SearchProductsRequest struct { - Query string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` + Query string `protobuf:"bytes,1,opt,name=query" json:"query,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -508,7 +508,7 @@ func (m *SearchProductsRequest) Reset() { *m = SearchProductsRequest{} } func (m *SearchProductsRequest) String() string { return proto.CompactTextString(m) } func (*SearchProductsRequest) ProtoMessage() {} func (*SearchProductsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{11} + return fileDescriptor_demo_957798eed1991a59, []int{11} } func (m *SearchProductsRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SearchProductsRequest.Unmarshal(m, b) @@ -536,7 +536,7 @@ func (m *SearchProductsRequest) GetQuery() string { } type SearchProductsResponse struct { - Results []*Product `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` + Results []*Product `protobuf:"bytes,1,rep,name=results" json:"results,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -546,7 +546,7 @@ func (m *SearchProductsResponse) Reset() { *m = SearchProductsResponse{} func (m *SearchProductsResponse) String() string { return proto.CompactTextString(m) } func (*SearchProductsResponse) ProtoMessage() {} func (*SearchProductsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{12} + return fileDescriptor_demo_957798eed1991a59, []int{12} } func (m *SearchProductsResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SearchProductsResponse.Unmarshal(m, b) @@ -574,8 +574,8 @@ func (m *SearchProductsResponse) GetResults() []*Product { } type GetQuoteRequest struct { - Address *Address `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` - Items []*CartItem `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"` + Address *Address `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` + Items []*CartItem `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -585,7 +585,7 @@ func (m *GetQuoteRequest) Reset() { *m = GetQuoteRequest{} } func (m *GetQuoteRequest) String() string { return proto.CompactTextString(m) } func (*GetQuoteRequest) ProtoMessage() {} func (*GetQuoteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{13} + return fileDescriptor_demo_957798eed1991a59, []int{13} } func (m *GetQuoteRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetQuoteRequest.Unmarshal(m, b) @@ -620,7 +620,7 @@ func (m *GetQuoteRequest) GetItems() []*CartItem { } type GetQuoteResponse struct { - CostUsd *MoneyAmount `protobuf:"bytes,1,opt,name=cost_usd,json=costUsd,proto3" json:"cost_usd,omitempty"` + CostUsd *MoneyAmount `protobuf:"bytes,1,opt,name=cost_usd,json=costUsd" json:"cost_usd,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -630,7 +630,7 @@ func (m *GetQuoteResponse) Reset() { *m = GetQuoteResponse{} } func (m *GetQuoteResponse) String() string { return proto.CompactTextString(m) } func (*GetQuoteResponse) ProtoMessage() {} func (*GetQuoteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{14} + return fileDescriptor_demo_957798eed1991a59, []int{14} } func (m *GetQuoteResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetQuoteResponse.Unmarshal(m, b) @@ -658,8 +658,8 @@ func (m *GetQuoteResponse) GetCostUsd() *MoneyAmount { } type ShipOrderRequest struct { - Address *Address `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` - Items []*CartItem `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"` + Address *Address `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` + Items []*CartItem `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -669,7 +669,7 @@ func (m *ShipOrderRequest) Reset() { *m = ShipOrderRequest{} } func (m *ShipOrderRequest) String() string { return proto.CompactTextString(m) } func (*ShipOrderRequest) ProtoMessage() {} func (*ShipOrderRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{15} + return fileDescriptor_demo_957798eed1991a59, []int{15} } func (m *ShipOrderRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ShipOrderRequest.Unmarshal(m, b) @@ -704,7 +704,7 @@ func (m *ShipOrderRequest) GetItems() []*CartItem { } type ShipOrderResponse struct { - TrackingId string `protobuf:"bytes,1,opt,name=tracking_id,json=trackingId,proto3" json:"tracking_id,omitempty"` + TrackingId string `protobuf:"bytes,1,opt,name=tracking_id,json=trackingId" json:"tracking_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -714,7 +714,7 @@ func (m *ShipOrderResponse) Reset() { *m = ShipOrderResponse{} } func (m *ShipOrderResponse) String() string { return proto.CompactTextString(m) } func (*ShipOrderResponse) ProtoMessage() {} func (*ShipOrderResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{16} + return fileDescriptor_demo_957798eed1991a59, []int{16} } func (m *ShipOrderResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ShipOrderResponse.Unmarshal(m, b) @@ -742,11 +742,11 @@ func (m *ShipOrderResponse) GetTrackingId() string { } type Address struct { - StreetAddress_1 string `protobuf:"bytes,1,opt,name=street_address_1,json=streetAddress1,proto3" json:"street_address_1,omitempty"` - StreetAddress_2 string `protobuf:"bytes,2,opt,name=street_address_2,json=streetAddress2,proto3" json:"street_address_2,omitempty"` - City string `protobuf:"bytes,3,opt,name=city,proto3" json:"city,omitempty"` - Country string `protobuf:"bytes,4,opt,name=country,proto3" json:"country,omitempty"` - ZipCode int32 `protobuf:"varint,5,opt,name=zip_code,json=zipCode,proto3" json:"zip_code,omitempty"` + StreetAddress_1 string `protobuf:"bytes,1,opt,name=street_address_1,json=streetAddress1" json:"street_address_1,omitempty"` + StreetAddress_2 string `protobuf:"bytes,2,opt,name=street_address_2,json=streetAddress2" json:"street_address_2,omitempty"` + City string `protobuf:"bytes,3,opt,name=city" json:"city,omitempty"` + Country string `protobuf:"bytes,4,opt,name=country" json:"country,omitempty"` + ZipCode int32 `protobuf:"varint,5,opt,name=zip_code,json=zipCode" json:"zip_code,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -756,7 +756,7 @@ func (m *Address) Reset() { *m = Address{} } func (m *Address) String() string { return proto.CompactTextString(m) } func (*Address) ProtoMessage() {} func (*Address) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{17} + return fileDescriptor_demo_957798eed1991a59, []int{17} } func (m *Address) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Address.Unmarshal(m, b) @@ -814,8 +814,8 @@ func (m *Address) GetZipCode() int32 { // Describes a money amount without currency. For example, decimal=2 and // fractional=500 (or fractional=5) makes up 2.5 units. type MoneyAmount struct { - Decimal uint32 `protobuf:"varint,1,opt,name=decimal,proto3" json:"decimal,omitempty"` - Fractional uint32 `protobuf:"varint,2,opt,name=fractional,proto3" json:"fractional,omitempty"` + Decimal uint32 `protobuf:"varint,1,opt,name=decimal" json:"decimal,omitempty"` + Fractional uint32 `protobuf:"varint,2,opt,name=fractional" json:"fractional,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -825,7 +825,7 @@ func (m *MoneyAmount) Reset() { *m = MoneyAmount{} } func (m *MoneyAmount) String() string { return proto.CompactTextString(m) } func (*MoneyAmount) ProtoMessage() {} func (*MoneyAmount) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{18} + return fileDescriptor_demo_957798eed1991a59, []int{18} } func (m *MoneyAmount) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MoneyAmount.Unmarshal(m, b) @@ -861,8 +861,8 @@ func (m *MoneyAmount) GetFractional() uint32 { type Money struct { // The 3-letter currency code defined in ISO 4217. - CurrencyCode string `protobuf:"bytes,1,opt,name=currency_code,json=currencyCode,proto3" json:"currency_code,omitempty"` - Amount *MoneyAmount `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` + CurrencyCode string `protobuf:"bytes,1,opt,name=currency_code,json=currencyCode" json:"currency_code,omitempty"` + Amount *MoneyAmount `protobuf:"bytes,2,opt,name=amount" json:"amount,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -872,7 +872,7 @@ func (m *Money) Reset() { *m = Money{} } func (m *Money) String() string { return proto.CompactTextString(m) } func (*Money) ProtoMessage() {} func (*Money) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{19} + return fileDescriptor_demo_957798eed1991a59, []int{19} } func (m *Money) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Money.Unmarshal(m, b) @@ -908,7 +908,7 @@ func (m *Money) GetAmount() *MoneyAmount { type GetSupportedCurrenciesResponse struct { // The 3-letter currency code defined in ISO 4217. - CurrencyCodes []string `protobuf:"bytes,1,rep,name=currency_codes,json=currencyCodes,proto3" json:"currency_codes,omitempty"` + CurrencyCodes []string `protobuf:"bytes,1,rep,name=currency_codes,json=currencyCodes" json:"currency_codes,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -918,7 +918,7 @@ func (m *GetSupportedCurrenciesResponse) Reset() { *m = GetSupportedCurr func (m *GetSupportedCurrenciesResponse) String() string { return proto.CompactTextString(m) } func (*GetSupportedCurrenciesResponse) ProtoMessage() {} func (*GetSupportedCurrenciesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{20} + return fileDescriptor_demo_957798eed1991a59, []int{20} } func (m *GetSupportedCurrenciesResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetSupportedCurrenciesResponse.Unmarshal(m, b) @@ -946,9 +946,9 @@ func (m *GetSupportedCurrenciesResponse) GetCurrencyCodes() []string { } type ConversionRequest struct { - From *Money `protobuf:"bytes,1,opt,name=from,proto3" json:"from,omitempty"` + From *Money `protobuf:"bytes,1,opt,name=from" json:"from,omitempty"` // The 3-letter currency code defined in ISO 4217. - ToCode string `protobuf:"bytes,2,opt,name=to_code,json=toCode,proto3" json:"to_code,omitempty"` + ToCode string `protobuf:"bytes,2,opt,name=to_code,json=toCode" json:"to_code,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -958,7 +958,7 @@ func (m *ConversionRequest) Reset() { *m = ConversionRequest{} } func (m *ConversionRequest) String() string { return proto.CompactTextString(m) } func (*ConversionRequest) ProtoMessage() {} func (*ConversionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{21} + return fileDescriptor_demo_957798eed1991a59, []int{21} } func (m *ConversionRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ConversionRequest.Unmarshal(m, b) @@ -993,7 +993,7 @@ func (m *ConversionRequest) GetToCode() string { } type ConversionResponse struct { - Result *Money `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"` + Result *Money `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1003,7 +1003,7 @@ func (m *ConversionResponse) Reset() { *m = ConversionResponse{} } func (m *ConversionResponse) String() string { return proto.CompactTextString(m) } func (*ConversionResponse) ProtoMessage() {} func (*ConversionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{22} + return fileDescriptor_demo_957798eed1991a59, []int{22} } func (m *ConversionResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ConversionResponse.Unmarshal(m, b) @@ -1031,10 +1031,10 @@ func (m *ConversionResponse) GetResult() *Money { } type CreditCardInfo struct { - CreditCardNumber string `protobuf:"bytes,1,opt,name=credit_card_number,json=creditCardNumber,proto3" json:"credit_card_number,omitempty"` - CreditCardCvv int32 `protobuf:"varint,2,opt,name=credit_card_cvv,json=creditCardCvv,proto3" json:"credit_card_cvv,omitempty"` - CreditCardExpirationYear int32 `protobuf:"varint,3,opt,name=credit_card_expiration_year,json=creditCardExpirationYear,proto3" json:"credit_card_expiration_year,omitempty"` - CreditCardExpirationMonth int32 `protobuf:"varint,4,opt,name=credit_card_expiration_month,json=creditCardExpirationMonth,proto3" json:"credit_card_expiration_month,omitempty"` + CreditCardNumber string `protobuf:"bytes,1,opt,name=credit_card_number,json=creditCardNumber" json:"credit_card_number,omitempty"` + CreditCardCvv int32 `protobuf:"varint,2,opt,name=credit_card_cvv,json=creditCardCvv" json:"credit_card_cvv,omitempty"` + CreditCardExpirationYear int32 `protobuf:"varint,3,opt,name=credit_card_expiration_year,json=creditCardExpirationYear" json:"credit_card_expiration_year,omitempty"` + CreditCardExpirationMonth int32 `protobuf:"varint,4,opt,name=credit_card_expiration_month,json=creditCardExpirationMonth" json:"credit_card_expiration_month,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1044,7 +1044,7 @@ func (m *CreditCardInfo) Reset() { *m = CreditCardInfo{} } func (m *CreditCardInfo) String() string { return proto.CompactTextString(m) } func (*CreditCardInfo) ProtoMessage() {} func (*CreditCardInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{23} + return fileDescriptor_demo_957798eed1991a59, []int{23} } func (m *CreditCardInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreditCardInfo.Unmarshal(m, b) @@ -1093,8 +1093,8 @@ func (m *CreditCardInfo) GetCreditCardExpirationMonth() int32 { } type ChargeRequest struct { - Amount *Money `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"` - CreditCard *CreditCardInfo `protobuf:"bytes,2,opt,name=credit_card,json=creditCard,proto3" json:"credit_card,omitempty"` + Amount *Money `protobuf:"bytes,1,opt,name=amount" json:"amount,omitempty"` + CreditCard *CreditCardInfo `protobuf:"bytes,2,opt,name=credit_card,json=creditCard" json:"credit_card,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1104,7 +1104,7 @@ func (m *ChargeRequest) Reset() { *m = ChargeRequest{} } func (m *ChargeRequest) String() string { return proto.CompactTextString(m) } func (*ChargeRequest) ProtoMessage() {} func (*ChargeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{24} + return fileDescriptor_demo_957798eed1991a59, []int{24} } func (m *ChargeRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ChargeRequest.Unmarshal(m, b) @@ -1139,7 +1139,7 @@ func (m *ChargeRequest) GetCreditCard() *CreditCardInfo { } type ChargeResponse struct { - TransactionId string `protobuf:"bytes,1,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` + TransactionId string `protobuf:"bytes,1,opt,name=transaction_id,json=transactionId" json:"transaction_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1149,7 +1149,7 @@ func (m *ChargeResponse) Reset() { *m = ChargeResponse{} } func (m *ChargeResponse) String() string { return proto.CompactTextString(m) } func (*ChargeResponse) ProtoMessage() {} func (*ChargeResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{25} + return fileDescriptor_demo_957798eed1991a59, []int{25} } func (m *ChargeResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ChargeResponse.Unmarshal(m, b) @@ -1177,8 +1177,8 @@ func (m *ChargeResponse) GetTransactionId() string { } type OrderItem struct { - Item *CartItem `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"` - Cost *Money `protobuf:"bytes,2,opt,name=cost,proto3" json:"cost,omitempty"` + Item *CartItem `protobuf:"bytes,1,opt,name=item" json:"item,omitempty"` + Cost *Money `protobuf:"bytes,2,opt,name=cost" json:"cost,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1188,7 +1188,7 @@ func (m *OrderItem) Reset() { *m = OrderItem{} } func (m *OrderItem) String() string { return proto.CompactTextString(m) } func (*OrderItem) ProtoMessage() {} func (*OrderItem) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{26} + return fileDescriptor_demo_957798eed1991a59, []int{26} } func (m *OrderItem) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_OrderItem.Unmarshal(m, b) @@ -1223,11 +1223,11 @@ func (m *OrderItem) GetCost() *Money { } type OrderResult struct { - OrderId string `protobuf:"bytes,1,opt,name=order_id,json=orderId,proto3" json:"order_id,omitempty"` - ShippingTrackingId string `protobuf:"bytes,2,opt,name=shipping_tracking_id,json=shippingTrackingId,proto3" json:"shipping_tracking_id,omitempty"` - ShippingCost *Money `protobuf:"bytes,3,opt,name=shipping_cost,json=shippingCost,proto3" json:"shipping_cost,omitempty"` - ShippingAddress *Address `protobuf:"bytes,4,opt,name=shipping_address,json=shippingAddress,proto3" json:"shipping_address,omitempty"` - Items []*OrderItem `protobuf:"bytes,5,rep,name=items,proto3" json:"items,omitempty"` + OrderId string `protobuf:"bytes,1,opt,name=order_id,json=orderId" json:"order_id,omitempty"` + ShippingTrackingId string `protobuf:"bytes,2,opt,name=shipping_tracking_id,json=shippingTrackingId" json:"shipping_tracking_id,omitempty"` + ShippingCost *Money `protobuf:"bytes,3,opt,name=shipping_cost,json=shippingCost" json:"shipping_cost,omitempty"` + ShippingAddress *Address `protobuf:"bytes,4,opt,name=shipping_address,json=shippingAddress" json:"shipping_address,omitempty"` + Items []*OrderItem `protobuf:"bytes,5,rep,name=items" json:"items,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1237,7 +1237,7 @@ func (m *OrderResult) Reset() { *m = OrderResult{} } func (m *OrderResult) String() string { return proto.CompactTextString(m) } func (*OrderResult) ProtoMessage() {} func (*OrderResult) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{27} + return fileDescriptor_demo_957798eed1991a59, []int{27} } func (m *OrderResult) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_OrderResult.Unmarshal(m, b) @@ -1293,8 +1293,8 @@ func (m *OrderResult) GetItems() []*OrderItem { } type SendOrderConfirmationRequest struct { - Email string `protobuf:"bytes,1,opt,name=email,proto3" json:"email,omitempty"` - Order *OrderResult `protobuf:"bytes,2,opt,name=order,proto3" json:"order,omitempty"` + Email string `protobuf:"bytes,1,opt,name=email" json:"email,omitempty"` + Order *OrderResult `protobuf:"bytes,2,opt,name=order" json:"order,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1304,7 +1304,7 @@ func (m *SendOrderConfirmationRequest) Reset() { *m = SendOrderConfirmat func (m *SendOrderConfirmationRequest) String() string { return proto.CompactTextString(m) } func (*SendOrderConfirmationRequest) ProtoMessage() {} func (*SendOrderConfirmationRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{28} + return fileDescriptor_demo_957798eed1991a59, []int{28} } func (m *SendOrderConfirmationRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SendOrderConfirmationRequest.Unmarshal(m, b) @@ -1339,9 +1339,9 @@ func (m *SendOrderConfirmationRequest) GetOrder() *OrderResult { } type CreateOrderRequest struct { - UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` - UserCurrency string `protobuf:"bytes,2,opt,name=user_currency,json=userCurrency,proto3" json:"user_currency,omitempty"` - Address *Address `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId" json:"user_id,omitempty"` + UserCurrency string `protobuf:"bytes,2,opt,name=user_currency,json=userCurrency" json:"user_currency,omitempty"` + Address *Address `protobuf:"bytes,3,opt,name=address" json:"address,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1351,7 +1351,7 @@ func (m *CreateOrderRequest) Reset() { *m = CreateOrderRequest{} } func (m *CreateOrderRequest) String() string { return proto.CompactTextString(m) } func (*CreateOrderRequest) ProtoMessage() {} func (*CreateOrderRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{29} + return fileDescriptor_demo_957798eed1991a59, []int{29} } func (m *CreateOrderRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateOrderRequest.Unmarshal(m, b) @@ -1393,8 +1393,8 @@ func (m *CreateOrderRequest) GetAddress() *Address { } type CreateOrderResponse struct { - Items []*OrderItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` - ShippingCost *Money `protobuf:"bytes,2,opt,name=shipping_cost,json=shippingCost,proto3" json:"shipping_cost,omitempty"` + Items []*OrderItem `protobuf:"bytes,1,rep,name=items" json:"items,omitempty"` + ShippingCost *Money `protobuf:"bytes,2,opt,name=shipping_cost,json=shippingCost" json:"shipping_cost,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1404,7 +1404,7 @@ func (m *CreateOrderResponse) Reset() { *m = CreateOrderResponse{} } func (m *CreateOrderResponse) String() string { return proto.CompactTextString(m) } func (*CreateOrderResponse) ProtoMessage() {} func (*CreateOrderResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{30} + return fileDescriptor_demo_957798eed1991a59, []int{30} } func (m *CreateOrderResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateOrderResponse.Unmarshal(m, b) @@ -1439,11 +1439,11 @@ func (m *CreateOrderResponse) GetShippingCost() *Money { } type PlaceOrderRequest struct { - UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` - UserCurrency string `protobuf:"bytes,2,opt,name=user_currency,json=userCurrency,proto3" json:"user_currency,omitempty"` - Address *Address `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"` - Email string `protobuf:"bytes,5,opt,name=email,proto3" json:"email,omitempty"` - CreditCard *CreditCardInfo `protobuf:"bytes,6,opt,name=credit_card,json=creditCard,proto3" json:"credit_card,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId" json:"user_id,omitempty"` + UserCurrency string `protobuf:"bytes,2,opt,name=user_currency,json=userCurrency" json:"user_currency,omitempty"` + Address *Address `protobuf:"bytes,3,opt,name=address" json:"address,omitempty"` + Email string `protobuf:"bytes,5,opt,name=email" json:"email,omitempty"` + CreditCard *CreditCardInfo `protobuf:"bytes,6,opt,name=credit_card,json=creditCard" json:"credit_card,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1453,7 +1453,7 @@ func (m *PlaceOrderRequest) Reset() { *m = PlaceOrderRequest{} } func (m *PlaceOrderRequest) String() string { return proto.CompactTextString(m) } func (*PlaceOrderRequest) ProtoMessage() {} func (*PlaceOrderRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{31} + return fileDescriptor_demo_957798eed1991a59, []int{31} } func (m *PlaceOrderRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PlaceOrderRequest.Unmarshal(m, b) @@ -1509,7 +1509,7 @@ func (m *PlaceOrderRequest) GetCreditCard() *CreditCardInfo { } type PlaceOrderResponse struct { - Order *OrderResult `protobuf:"bytes,1,opt,name=order,proto3" json:"order,omitempty"` + Order *OrderResult `protobuf:"bytes,1,opt,name=order" json:"order,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1519,7 +1519,7 @@ func (m *PlaceOrderResponse) Reset() { *m = PlaceOrderResponse{} } func (m *PlaceOrderResponse) String() string { return proto.CompactTextString(m) } func (*PlaceOrderResponse) ProtoMessage() {} func (*PlaceOrderResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_demo_d65f84bf2547388d, []int{32} + return fileDescriptor_demo_957798eed1991a59, []int{32} } func (m *PlaceOrderResponse) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PlaceOrderResponse.Unmarshal(m, b) @@ -2333,10 +2333,10 @@ var _CheckoutService_serviceDesc = grpc.ServiceDesc{ Metadata: "demo.proto", } -func init() { proto.RegisterFile("demo.proto", fileDescriptor_demo_d65f84bf2547388d) } +func init() { proto.RegisterFile("demo.proto", fileDescriptor_demo_957798eed1991a59) } -var fileDescriptor_demo_d65f84bf2547388d = []byte{ - // 1482 bytes of a gzipped FileDescriptorProto +var fileDescriptor_demo_957798eed1991a59 = []byte{ + // 1480 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xdd, 0x72, 0xd3, 0x46, 0x1b, 0x8e, 0x92, 0x38, 0xb6, 0x5f, 0xc7, 0x4e, 0xb2, 0x24, 0x7c, 0x46, 0x81, 0x90, 0x6f, 0x33, 0x1f, 0x5f, 0xf8, 0x69, 0x06, 0x42, 0x3b, 0x1c, 0x94, 0x16, 0x18, 0x93, 0x31, 0x9e, 0x81, 0x42, @@ -2355,79 +2355,79 @@ var fileDescriptor_demo_d65f84bf2547388d = []byte{ 0x36, 0xc9, 0x04, 0x83, 0xeb, 0x50, 0x93, 0x2c, 0xf1, 0x37, 0x60, 0x3e, 0xf6, 0x22, 0x6e, 0x11, 0x87, 0xfa, 0x3e, 0x09, 0x5c, 0x9b, 0x7b, 0x34, 0x88, 0x4e, 0x35, 0xc8, 0x65, 0x68, 0x65, 0x66, 0x4f, 0x54, 0x36, 0x2d, 0x48, 0xed, 0x1e, 0xe1, 0x2f, 0x61, 0xb3, 0x52, 0x6e, 0x14, 0xd2, 0x20, - 0x22, 0xe5, 0xfb, 0xc6, 0xd4, 0xfd, 0x9f, 0x0d, 0xa8, 0x3f, 0x4b, 0x96, 0xa8, 0x03, 0xf3, 0x8a, - 0x40, 0xcd, 0x9a, 0xf7, 0x5c, 0x84, 0x60, 0x31, 0xb0, 0x7d, 0x22, 0xbd, 0xd1, 0xb4, 0xe4, 0x6f, - 0xb4, 0x0d, 0x2d, 0x97, 0x44, 0x0e, 0xf3, 0x42, 0xa1, 0xa8, 0xbb, 0x20, 0x8f, 0xf2, 0x5b, 0xa8, - 0x0b, 0xf5, 0xd0, 0x73, 0x78, 0xcc, 0x48, 0x77, 0x51, 0x9e, 0xea, 0x25, 0xfa, 0x0c, 0x9a, 0x21, - 0xf3, 0x1c, 0x32, 0x8c, 0x23, 0xb7, 0x5b, 0x93, 0x2e, 0xee, 0x16, 0xac, 0xf7, 0x84, 0x06, 0x64, - 0xf2, 0xc0, 0xa7, 0x71, 0xc0, 0xad, 0x86, 0x84, 0xbe, 0x88, 0x5c, 0xfc, 0x08, 0xd6, 0xc5, 0x13, - 0x15, 0xcb, 0xec, 0x6d, 0x37, 0xa1, 0xa1, 0x1e, 0x92, 0x3c, 0xac, 0xb5, 0xbf, 0x5e, 0x90, 0xa6, - 0x2e, 0x58, 0x29, 0x0a, 0xef, 0xc0, 0x5a, 0x9f, 0x68, 0x41, 0xda, 0xf6, 0xa5, 0x57, 0xe3, 0x4f, - 0x60, 0xe3, 0x90, 0xd8, 0xcc, 0x19, 0x65, 0x0a, 0x13, 0xe0, 0x3a, 0xd4, 0xde, 0xc5, 0x84, 0x4d, - 0x94, 0x8b, 0x92, 0x05, 0x7e, 0x04, 0xe7, 0xcb, 0x70, 0xc5, 0x6f, 0x0f, 0xea, 0x8c, 0x44, 0xf1, - 0xf8, 0x14, 0x7a, 0x1a, 0x84, 0x03, 0x58, 0xe9, 0x13, 0xfe, 0x75, 0x4c, 0x39, 0xd1, 0x2a, 0xf7, - 0xa0, 0x6e, 0xbb, 0x2e, 0x23, 0x51, 0x24, 0x95, 0x96, 0x45, 0x3c, 0x48, 0xce, 0x2c, 0x0d, 0xfa, - 0xb8, 0xd8, 0xec, 0xc3, 0x6a, 0xa6, 0x4f, 0x71, 0xbe, 0x0d, 0x0d, 0x87, 0x46, 0x5c, 0x7a, 0xc8, - 0x38, 0xc5, 0x43, 0x75, 0x81, 0x14, 0x0e, 0xa2, 0xb0, 0x7a, 0x38, 0xf2, 0xc2, 0xa7, 0xcc, 0x25, - 0xec, 0x1f, 0x61, 0xfe, 0x29, 0xac, 0xe5, 0x14, 0x66, 0xa1, 0xce, 0x99, 0xed, 0xbc, 0xf5, 0x82, - 0x37, 0x59, 0x1e, 0x81, 0xde, 0x1a, 0xb8, 0xf8, 0x17, 0x03, 0xea, 0x4a, 0x2f, 0xda, 0x85, 0xd5, - 0x88, 0x33, 0x42, 0xf8, 0x50, 0x11, 0x18, 0xde, 0x52, 0x37, 0x3a, 0xc9, 0xbe, 0x02, 0xde, 0xaa, - 0x40, 0xee, 0xab, 0x84, 0x28, 0x22, 0xf7, 0x45, 0xba, 0x38, 0xa2, 0xfe, 0x25, 0x39, 0x21, 0x7f, - 0x8b, 0x64, 0x70, 0x84, 0xb1, 0xd8, 0x44, 0x27, 0x83, 0x5a, 0xa2, 0x0b, 0xd0, 0x78, 0xef, 0x85, - 0x43, 0x87, 0xba, 0x44, 0xe6, 0x42, 0xcd, 0xaa, 0xbf, 0xf7, 0xc2, 0x1e, 0x75, 0x09, 0xee, 0x43, - 0x2b, 0x67, 0x67, 0x21, 0xc3, 0x25, 0x8e, 0xe7, 0xdb, 0x63, 0x49, 0xb1, 0x6d, 0xe9, 0x25, 0xda, - 0x02, 0x38, 0x62, 0xb6, 0x23, 0xd2, 0xce, 0x1e, 0x4b, 0x56, 0x6d, 0x2b, 0xb7, 0x83, 0x5f, 0x41, - 0x4d, 0x0a, 0x42, 0x3b, 0xd0, 0x76, 0x62, 0xc6, 0x48, 0xe0, 0x4c, 0x12, 0x8d, 0xc9, 0x5b, 0x97, - 0xf5, 0xa6, 0x50, 0x8b, 0x6e, 0xc2, 0x92, 0x2d, 0x35, 0xaa, 0xf2, 0x3b, 0xdb, 0xf3, 0x0a, 0x87, - 0xfb, 0xb0, 0xd5, 0x27, 0xfc, 0x30, 0x0e, 0x43, 0xca, 0x38, 0x71, 0x7b, 0x89, 0x34, 0x8f, 0x64, - 0x39, 0xf0, 0x3f, 0xe8, 0x14, 0x14, 0xeb, 0x12, 0xd4, 0xce, 0x6b, 0x8e, 0xf0, 0x73, 0x58, 0xeb, - 0xd1, 0xe0, 0x98, 0xb0, 0xc8, 0xa3, 0x81, 0x0e, 0xa1, 0x2b, 0xb0, 0x78, 0xc4, 0xa8, 0xaf, 0xe2, - 0x07, 0x4d, 0xb3, 0xb1, 0xe4, 0xb9, 0x28, 0x9e, 0x9c, 0x26, 0xcf, 0x4a, 0x1c, 0xb3, 0xc4, 0xa9, - 0xb4, 0xe3, 0x7d, 0x40, 0x79, 0xa9, 0x8a, 0xd2, 0x35, 0x58, 0x4a, 0x32, 0xee, 0x04, 0xc1, 0x0a, - 0x81, 0xff, 0x32, 0xa0, 0xd3, 0x63, 0xc4, 0xf5, 0x44, 0xef, 0x70, 0x07, 0xc1, 0x11, 0x45, 0x37, - 0x00, 0x39, 0x72, 0x67, 0xe8, 0xd8, 0xcc, 0x1d, 0x06, 0xb1, 0xff, 0x9a, 0x30, 0x65, 0xcf, 0x55, - 0x27, 0xc5, 0x7e, 0x25, 0xf7, 0xd1, 0x15, 0x58, 0xc9, 0xa3, 0x9d, 0xe3, 0x63, 0xd5, 0x1e, 0xdb, - 0x19, 0xb4, 0x77, 0x7c, 0x8c, 0xbe, 0x80, 0xcd, 0x3c, 0x8e, 0xfc, 0x10, 0x7a, 0x4c, 0x96, 0xf2, - 0xe1, 0x84, 0xd8, 0x4c, 0x86, 0x54, 0xcd, 0xea, 0x66, 0x77, 0x0e, 0x52, 0xc0, 0x77, 0xc4, 0x66, - 0xe8, 0x1e, 0x5c, 0x9c, 0x71, 0xdd, 0xa7, 0x01, 0x1f, 0xc9, 0xd8, 0xab, 0x59, 0x17, 0xaa, 0xee, - 0x3f, 0x11, 0x00, 0x3c, 0x81, 0x76, 0x6f, 0x64, 0xb3, 0x37, 0x69, 0xe5, 0xb9, 0x96, 0x06, 0xc3, - 0x09, 0x56, 0x4a, 0x10, 0xe8, 0x2e, 0xb4, 0x72, 0xda, 0x55, 0xf4, 0x6c, 0x16, 0x33, 0xb8, 0x60, - 0x44, 0x0b, 0x32, 0x26, 0xf8, 0x0e, 0x74, 0xb4, 0xea, 0x2c, 0x68, 0x38, 0xb3, 0x83, 0x28, 0x89, - 0xe3, 0x2c, 0x99, 0xdb, 0xb9, 0xdd, 0x81, 0x8b, 0x5f, 0x41, 0x53, 0x56, 0x00, 0x39, 0x9f, 0xe8, - 0xc9, 0xc1, 0x38, 0x75, 0x72, 0x10, 0x71, 0x25, 0x2a, 0x97, 0xe2, 0x59, 0x19, 0x57, 0xe2, 0x1c, - 0x7f, 0x98, 0x87, 0x96, 0x2e, 0x31, 0xf1, 0x98, 0x8b, 0x8c, 0xa5, 0x62, 0x99, 0x11, 0xaa, 0xcb, - 0xf5, 0xc0, 0x45, 0x37, 0x61, 0x3d, 0x1a, 0x79, 0x61, 0x28, 0x6a, 0x4f, 0xbe, 0x08, 0x25, 0xf1, - 0x88, 0xf4, 0xd9, 0xf3, 0xb4, 0x18, 0xa1, 0x3b, 0xd0, 0x4e, 0x6f, 0x48, 0x36, 0x0b, 0x33, 0xd9, - 0x2c, 0x6b, 0x60, 0x8f, 0x46, 0x1c, 0xdd, 0x83, 0xd5, 0xf4, 0xa2, 0xae, 0xb0, 0x8b, 0x27, 0x54, - 0xd8, 0x15, 0x8d, 0xd6, 0xa5, 0xef, 0x86, 0xae, 0xb4, 0x35, 0x59, 0x69, 0xcf, 0x17, 0x6e, 0xa5, - 0x06, 0xd5, 0xa5, 0xd6, 0x85, 0x8b, 0x87, 0x24, 0x70, 0xe5, 0x7e, 0x8f, 0x06, 0x47, 0x1e, 0xf3, - 0x65, 0xd8, 0xe4, 0x9a, 0x22, 0xf1, 0x6d, 0x6f, 0xac, 0x9b, 0xa2, 0x5c, 0xa0, 0x3d, 0xa8, 0x49, - 0xd3, 0x54, 0x56, 0x92, 0x9c, 0x4d, 0xad, 0x04, 0x86, 0x3f, 0x18, 0x80, 0x7a, 0x8c, 0xd8, 0x9c, - 0x14, 0x9a, 0xc8, 0xcc, 0xb1, 0x68, 0x07, 0xda, 0xf2, 0x40, 0x57, 0x11, 0x65, 0xe8, 0x65, 0xb1, - 0xa9, 0xaa, 0xd0, 0x24, 0xdf, 0x82, 0x16, 0xce, 0xd0, 0x82, 0xf0, 0x8f, 0x70, 0xae, 0xc0, 0x41, - 0x45, 0x63, 0x6a, 0x2f, 0xe3, 0x0c, 0xf6, 0x9a, 0xf6, 0xeb, 0xfc, 0xd9, 0xfc, 0x8a, 0xff, 0x34, - 0x60, 0xed, 0xd9, 0xd8, 0x76, 0xfe, 0x45, 0x0b, 0x64, 0xce, 0xac, 0xe5, 0x9d, 0x59, 0x4a, 0xef, - 0xa5, 0x8f, 0x4b, 0xef, 0x87, 0x80, 0xf2, 0xcf, 0x4a, 0x67, 0x23, 0x15, 0x20, 0xc6, 0x99, 0x02, - 0x64, 0xff, 0x0f, 0x03, 0x5a, 0x22, 0x8d, 0x0f, 0x09, 0x3b, 0xf6, 0x1c, 0x82, 0xee, 0xca, 0x56, - 0x2e, 0x33, 0x7f, 0xb3, 0xfc, 0xa6, 0xdc, 0x97, 0x86, 0x59, 0xb4, 0x7b, 0x32, 0x8a, 0xcf, 0xa1, - 0xcf, 0xa1, 0xae, 0x3e, 0x07, 0x4a, 0xb7, 0x8b, 0x1f, 0x09, 0xe6, 0xda, 0x54, 0x19, 0xc1, 0x73, - 0xe8, 0x3e, 0x34, 0xd3, 0x0f, 0x0f, 0x74, 0x69, 0x5a, 0x7e, 0x5e, 0x40, 0xa5, 0xfa, 0xfd, 0x9f, - 0x0c, 0xd8, 0x28, 0x0e, 0xec, 0xfa, 0x59, 0xdf, 0xc3, 0xb9, 0x8a, 0x69, 0x1e, 0xfd, 0xbf, 0x20, - 0x66, 0xf6, 0x77, 0x84, 0xb9, 0x7b, 0x3a, 0x30, 0x71, 0x80, 0x60, 0x31, 0x0f, 0x1b, 0x6a, 0x06, - 0xed, 0xd9, 0xdc, 0x1e, 0xd3, 0x37, 0x9a, 0x45, 0x1f, 0x96, 0xf3, 0x03, 0x37, 0xaa, 0x78, 0x85, - 0xf9, 0xdf, 0x29, 0x4d, 0xe5, 0xf9, 0x17, 0xcf, 0xa1, 0x87, 0x00, 0xd9, 0xbc, 0x8d, 0xb6, 0xca, - 0xa6, 0x2e, 0x0e, 0xe2, 0x66, 0xe5, 0x78, 0x8c, 0xe7, 0xd0, 0x4b, 0xe8, 0x14, 0x27, 0x6c, 0x84, - 0x0b, 0xc8, 0xca, 0x69, 0xdd, 0xdc, 0x39, 0x11, 0x93, 0x5a, 0xe1, 0x57, 0x03, 0x56, 0x0e, 0x55, - 0x1e, 0xea, 0xf7, 0x0f, 0xa0, 0xa1, 0x07, 0x63, 0x74, 0xb1, 0x4c, 0x3a, 0x3f, 0x9f, 0x9b, 0x97, - 0x66, 0x9c, 0xa6, 0x16, 0x78, 0x0c, 0xcd, 0x74, 0x52, 0x2d, 0x05, 0x4b, 0x79, 0x64, 0x36, 0xb7, - 0x66, 0x1d, 0xa7, 0x64, 0x7f, 0x37, 0x60, 0x45, 0x27, 0xb7, 0x26, 0xfb, 0x12, 0xce, 0x57, 0xcf, - 0x60, 0x95, 0x6e, 0xbb, 0x5e, 0x26, 0x7c, 0xc2, 0xf0, 0x26, 0xe9, 0xd7, 0x93, 0x09, 0xaa, 0xec, - 0xbd, 0xa9, 0x69, 0xcd, 0xbc, 0x3c, 0xf3, 0x3c, 0xa5, 0xff, 0x02, 0x3a, 0xcf, 0xec, 0x89, 0x4f, - 0x82, 0x34, 0x8d, 0x7b, 0xb0, 0x94, 0xf4, 0x7e, 0x64, 0x16, 0xaf, 0xe7, 0x67, 0x11, 0x73, 0xb3, - 0xf2, 0x2c, 0x15, 0x3b, 0x82, 0xe5, 0x03, 0x51, 0xa8, 0xb4, 0xd0, 0x6f, 0xc5, 0x07, 0x5c, 0x45, - 0xcb, 0x42, 0x57, 0x4b, 0x21, 0x31, 0xbb, 0xad, 0xcd, 0x48, 0xdc, 0xdf, 0x84, 0xfd, 0x47, 0xc4, - 0x79, 0x4b, 0xe3, 0xf4, 0x09, 0x16, 0xb4, 0x72, 0x5d, 0x03, 0x5d, 0x2e, 0xd7, 0xc5, 0x52, 0x4f, - 0x33, 0xb7, 0x67, 0x03, 0x52, 0xb3, 0x3f, 0x05, 0xc8, 0x6a, 0x66, 0xc9, 0xf2, 0x53, 0x3d, 0xa2, - 0x64, 0xf9, 0xe9, 0x62, 0x8b, 0xe7, 0x5e, 0x2f, 0xc9, 0x7f, 0x77, 0x6e, 0xff, 0x1d, 0x00, 0x00, - 0xff, 0xff, 0xfe, 0x73, 0x50, 0xfe, 0xeb, 0x11, 0x00, 0x00, + 0x22, 0xe5, 0xfb, 0xc6, 0xd4, 0xfd, 0x9f, 0x0d, 0xa8, 0x3f, 0x4b, 0x96, 0xa8, 0x03, 0xf3, 0x29, + 0x81, 0x79, 0xcf, 0x45, 0x08, 0x16, 0x03, 0xdb, 0x27, 0xd2, 0x1b, 0x4d, 0x4b, 0xfe, 0x46, 0xdb, + 0xd0, 0x72, 0x49, 0xe4, 0x30, 0x2f, 0x14, 0x8a, 0xba, 0x0b, 0xf2, 0x28, 0xbf, 0x85, 0xba, 0x50, + 0x0f, 0x3d, 0x87, 0xc7, 0x8c, 0x74, 0x17, 0xe5, 0xa9, 0x5e, 0xa2, 0xcf, 0xa0, 0x19, 0x32, 0xcf, + 0x21, 0xc3, 0x38, 0x72, 0xbb, 0x35, 0xe9, 0xe2, 0x6e, 0xc1, 0x7a, 0x4f, 0x68, 0x40, 0x26, 0x0f, + 0x7c, 0x1a, 0x07, 0xdc, 0x6a, 0x48, 0xe8, 0x8b, 0xc8, 0xc5, 0x8f, 0x60, 0x5d, 0x3c, 0x51, 0xb1, + 0xcc, 0xde, 0x76, 0x13, 0x1a, 0xea, 0x21, 0xc9, 0xc3, 0x5a, 0xfb, 0xeb, 0x05, 0x69, 0xea, 0x82, + 0x95, 0xa2, 0xf0, 0x0e, 0xac, 0xf5, 0x89, 0x16, 0xa4, 0x6d, 0x5f, 0x7a, 0x35, 0xfe, 0x04, 0x36, + 0x0e, 0x89, 0xcd, 0x9c, 0x51, 0xa6, 0x30, 0x01, 0xae, 0x43, 0xed, 0x5d, 0x4c, 0xd8, 0x44, 0x61, + 0x93, 0x05, 0x7e, 0x04, 0xe7, 0xcb, 0x70, 0xc5, 0x6f, 0x0f, 0xea, 0x8c, 0x44, 0xf1, 0xf8, 0x14, + 0x7a, 0x1a, 0x84, 0x03, 0x58, 0xe9, 0x13, 0xfe, 0x75, 0x4c, 0x39, 0xd1, 0x2a, 0xf7, 0xa0, 0x6e, + 0xbb, 0x2e, 0x23, 0x51, 0x24, 0x95, 0x96, 0x45, 0x3c, 0x48, 0xce, 0x2c, 0x0d, 0xfa, 0xb8, 0xd8, + 0xec, 0xc3, 0x6a, 0xa6, 0x4f, 0x71, 0xbe, 0x0d, 0x0d, 0x87, 0x46, 0x5c, 0x7a, 0xc8, 0x38, 0xc5, + 0x43, 0x75, 0x81, 0x14, 0x0e, 0xa2, 0xb0, 0x7a, 0x38, 0xf2, 0xc2, 0xa7, 0xcc, 0x25, 0xec, 0x1f, + 0x61, 0xfe, 0x29, 0xac, 0xe5, 0x14, 0x66, 0xa1, 0xce, 0x99, 0xed, 0xbc, 0xf5, 0x82, 0x37, 0x59, + 0x1e, 0x81, 0xde, 0x1a, 0xb8, 0xf8, 0x17, 0x03, 0xea, 0x4a, 0x2f, 0xda, 0x85, 0xd5, 0x88, 0x33, + 0x42, 0xf8, 0x50, 0x11, 0x18, 0xde, 0x52, 0x37, 0x3a, 0xc9, 0xbe, 0x02, 0xde, 0xaa, 0x40, 0xee, + 0xab, 0x84, 0x28, 0x22, 0xf7, 0x45, 0xba, 0x38, 0xa2, 0xfe, 0x25, 0x39, 0x21, 0x7f, 0x8b, 0x64, + 0x70, 0x84, 0xb1, 0xd8, 0x44, 0x27, 0x83, 0x5a, 0xa2, 0x0b, 0xd0, 0x78, 0xef, 0x85, 0x43, 0x87, + 0xba, 0x44, 0xe6, 0x42, 0xcd, 0xaa, 0xbf, 0xf7, 0xc2, 0x1e, 0x75, 0x09, 0xee, 0x43, 0x2b, 0x67, + 0x67, 0x21, 0xc3, 0x25, 0x8e, 0xe7, 0xdb, 0x63, 0x49, 0xb1, 0x6d, 0xe9, 0x25, 0xda, 0x02, 0x38, + 0x62, 0xb6, 0x23, 0xd2, 0xce, 0x1e, 0x4b, 0x56, 0x6d, 0x2b, 0xb7, 0x83, 0x5f, 0x41, 0x4d, 0x0a, + 0x42, 0x3b, 0xd0, 0x76, 0x62, 0xc6, 0x48, 0xe0, 0x4c, 0x12, 0x8d, 0xc9, 0x5b, 0x97, 0xf5, 0xa6, + 0x50, 0x8b, 0x6e, 0xc2, 0x92, 0x2d, 0x35, 0xaa, 0xf2, 0x3b, 0xdb, 0xf3, 0x0a, 0x87, 0xfb, 0xb0, + 0xd5, 0x27, 0xfc, 0x30, 0x0e, 0x43, 0xca, 0x38, 0x71, 0x7b, 0x89, 0x34, 0x8f, 0x64, 0x39, 0xf0, + 0x3f, 0xe8, 0x14, 0x14, 0xeb, 0x12, 0xd4, 0xce, 0x6b, 0x8e, 0xf0, 0x73, 0x58, 0xeb, 0xd1, 0xe0, + 0x98, 0xb0, 0xc8, 0xa3, 0x81, 0x0e, 0xa1, 0x2b, 0xb0, 0x78, 0xc4, 0xa8, 0xaf, 0xe2, 0x07, 0x4d, + 0xb3, 0xb1, 0xe4, 0xb9, 0x28, 0x9e, 0x9c, 0x26, 0xcf, 0x4a, 0x1c, 0xb3, 0xc4, 0xa9, 0xb4, 0xe3, + 0x7d, 0x40, 0x79, 0xa9, 0x8a, 0xd2, 0x35, 0x58, 0x4a, 0x32, 0xee, 0x04, 0xc1, 0x0a, 0x81, 0xff, + 0x32, 0xa0, 0xd3, 0x63, 0xc4, 0xf5, 0x44, 0xef, 0x70, 0x07, 0xc1, 0x11, 0x45, 0x37, 0x00, 0x39, + 0x72, 0x67, 0xe8, 0xd8, 0xcc, 0x1d, 0x06, 0xb1, 0xff, 0x9a, 0x30, 0x65, 0xcf, 0x55, 0x27, 0xc5, + 0x7e, 0x25, 0xf7, 0xd1, 0x15, 0x58, 0xc9, 0xa3, 0x9d, 0xe3, 0x63, 0xd5, 0x1e, 0xdb, 0x19, 0xb4, + 0x77, 0x7c, 0x8c, 0xbe, 0x80, 0xcd, 0x3c, 0x8e, 0xfc, 0x10, 0x7a, 0x4c, 0x96, 0xf2, 0xe1, 0x84, + 0xd8, 0x4c, 0x86, 0x54, 0xcd, 0xea, 0x66, 0x77, 0x0e, 0x52, 0xc0, 0x77, 0xc4, 0x66, 0xe8, 0x1e, + 0x5c, 0x9c, 0x71, 0xdd, 0xa7, 0x01, 0x1f, 0xc9, 0xd8, 0xab, 0x59, 0x17, 0xaa, 0xee, 0x3f, 0x11, + 0x00, 0x3c, 0x81, 0x76, 0x6f, 0x64, 0xb3, 0x37, 0x69, 0xe5, 0xb9, 0x96, 0x06, 0xc3, 0x09, 0x56, + 0x4a, 0x10, 0xe8, 0x2e, 0xb4, 0x72, 0xda, 0x55, 0xf4, 0x6c, 0x16, 0x33, 0xb8, 0x60, 0x44, 0x0b, + 0x32, 0x26, 0xf8, 0x0e, 0x74, 0xb4, 0xea, 0x2c, 0x68, 0x38, 0xb3, 0x83, 0x28, 0x89, 0xe3, 0x2c, + 0x99, 0xdb, 0xb9, 0xdd, 0x81, 0x8b, 0x5f, 0x41, 0x53, 0x56, 0x00, 0x39, 0x9f, 0xe8, 0xc9, 0xc1, + 0x38, 0x75, 0x72, 0x10, 0x71, 0x25, 0x2a, 0x97, 0xe2, 0x59, 0x19, 0x57, 0xe2, 0x1c, 0x7f, 0x98, + 0x87, 0x96, 0x2e, 0x31, 0xf1, 0x98, 0x8b, 0x8c, 0xa5, 0x62, 0x99, 0x11, 0xaa, 0xcb, 0xf5, 0xc0, + 0x45, 0x37, 0x61, 0x3d, 0x1a, 0x79, 0x61, 0x28, 0x6a, 0x4f, 0xbe, 0x08, 0x25, 0xf1, 0x88, 0xf4, + 0xd9, 0xf3, 0xb4, 0x18, 0xa1, 0x3b, 0xd0, 0x4e, 0x6f, 0x48, 0x36, 0x0b, 0x33, 0xd9, 0x2c, 0x6b, + 0x60, 0x8f, 0x46, 0x1c, 0xdd, 0x83, 0xd5, 0xf4, 0xa2, 0xae, 0xb0, 0x8b, 0x27, 0x54, 0xd8, 0x15, + 0x8d, 0xd6, 0xa5, 0xef, 0x86, 0xae, 0xb4, 0x35, 0x59, 0x69, 0xcf, 0x17, 0x6e, 0xa5, 0x06, 0xd5, + 0xa5, 0xd6, 0x85, 0x8b, 0x87, 0x24, 0x70, 0xe5, 0x7e, 0x8f, 0x06, 0x47, 0x1e, 0xf3, 0x65, 0xd8, + 0xe4, 0x9a, 0x22, 0xf1, 0x6d, 0x6f, 0xac, 0x9b, 0xa2, 0x5c, 0xa0, 0x3d, 0xa8, 0x49, 0xd3, 0x54, + 0x56, 0x92, 0x9c, 0x4d, 0xad, 0x04, 0x86, 0x3f, 0x18, 0x80, 0x7a, 0x8c, 0xd8, 0x9c, 0x14, 0x9a, + 0xc8, 0xcc, 0xb1, 0x68, 0x07, 0xda, 0xf2, 0x40, 0x57, 0x11, 0x65, 0xe8, 0x65, 0xb1, 0xa9, 0xaa, + 0xd0, 0x24, 0xdf, 0x82, 0x16, 0xce, 0xd0, 0x82, 0xf0, 0x8f, 0x70, 0xae, 0xc0, 0x41, 0x45, 0x63, + 0x6a, 0x2f, 0xe3, 0x0c, 0xf6, 0x9a, 0xf6, 0xeb, 0xfc, 0xd9, 0xfc, 0x8a, 0xff, 0x34, 0x60, 0xed, + 0xd9, 0xd8, 0x76, 0xfe, 0x45, 0x0b, 0x64, 0xce, 0xac, 0xe5, 0x9d, 0x59, 0x4a, 0xef, 0xa5, 0x8f, + 0x4b, 0xef, 0x87, 0x80, 0xf2, 0xcf, 0x4a, 0x67, 0x23, 0x15, 0x20, 0xc6, 0x99, 0x02, 0x64, 0xff, + 0x0f, 0x03, 0x5a, 0x22, 0x8d, 0x0f, 0x09, 0x3b, 0xf6, 0x1c, 0x82, 0xee, 0xca, 0x56, 0x2e, 0x33, + 0x7f, 0xb3, 0xfc, 0xa6, 0xdc, 0x97, 0x86, 0x59, 0xb4, 0x7b, 0x32, 0x8a, 0xcf, 0xa1, 0xcf, 0xa1, + 0xae, 0x3e, 0x07, 0x4a, 0xb7, 0x8b, 0x1f, 0x09, 0xe6, 0xda, 0x54, 0x19, 0xc1, 0x73, 0xe8, 0x3e, + 0x34, 0xd3, 0x0f, 0x0f, 0x74, 0x69, 0x5a, 0x7e, 0x5e, 0x40, 0xa5, 0xfa, 0xfd, 0x9f, 0x0c, 0xd8, + 0x28, 0x0e, 0xec, 0xfa, 0x59, 0xdf, 0xc3, 0xb9, 0x8a, 0x69, 0x1e, 0xfd, 0xbf, 0x20, 0x66, 0xf6, + 0x77, 0x84, 0xb9, 0x7b, 0x3a, 0x30, 0x71, 0x80, 0x60, 0x31, 0x0f, 0x1b, 0x6a, 0x06, 0xed, 0xd9, + 0xdc, 0x1e, 0xd3, 0x37, 0x9a, 0x45, 0x1f, 0x96, 0xf3, 0x03, 0x37, 0xaa, 0x78, 0x85, 0xf9, 0xdf, + 0x29, 0x4d, 0xe5, 0xf9, 0x17, 0xcf, 0xa1, 0x87, 0x00, 0xd9, 0xbc, 0x8d, 0xb6, 0xca, 0xa6, 0x2e, + 0x0e, 0xe2, 0x66, 0xe5, 0x78, 0x8c, 0xe7, 0xd0, 0x4b, 0xe8, 0x14, 0x27, 0x6c, 0x84, 0x0b, 0xc8, + 0xca, 0x69, 0xdd, 0xdc, 0x39, 0x11, 0x93, 0x5a, 0xe1, 0x57, 0x03, 0x56, 0x0e, 0x55, 0x1e, 0xea, + 0xf7, 0x0f, 0xa0, 0xa1, 0x07, 0x63, 0x74, 0xb1, 0x4c, 0x3a, 0x3f, 0x9f, 0x9b, 0x97, 0x66, 0x9c, + 0xa6, 0x16, 0x78, 0x0c, 0xcd, 0x74, 0x52, 0x2d, 0x05, 0x4b, 0x79, 0x64, 0x36, 0xb7, 0x66, 0x1d, + 0xa7, 0x64, 0x7f, 0x37, 0x60, 0x45, 0x27, 0xb7, 0x26, 0xfb, 0x12, 0xce, 0x57, 0xcf, 0x60, 0x95, + 0x6e, 0xbb, 0x5e, 0x26, 0x7c, 0xc2, 0xf0, 0x26, 0xe9, 0xd7, 0x93, 0x09, 0xaa, 0xec, 0xbd, 0xa9, + 0x69, 0xcd, 0xbc, 0x3c, 0xf3, 0x3c, 0xa5, 0xff, 0x02, 0x3a, 0xcf, 0xec, 0x89, 0x4f, 0x82, 0x34, + 0x8d, 0x7b, 0xb0, 0x94, 0xf4, 0x7e, 0x64, 0x16, 0xaf, 0xe7, 0x67, 0x11, 0x73, 0xb3, 0xf2, 0x2c, + 0x15, 0x3b, 0x82, 0xe5, 0x03, 0x51, 0xa8, 0xb4, 0xd0, 0x6f, 0xc5, 0x07, 0x5c, 0x45, 0xcb, 0x42, + 0x57, 0x4b, 0x21, 0x31, 0xbb, 0xad, 0xcd, 0x48, 0xdc, 0xdf, 0x84, 0xfd, 0x47, 0xc4, 0x79, 0x4b, + 0xe3, 0xf4, 0x09, 0x16, 0xb4, 0x72, 0x5d, 0x03, 0x5d, 0x2e, 0xd7, 0xc5, 0x52, 0x4f, 0x33, 0xb7, + 0x67, 0x03, 0x52, 0xb3, 0x3f, 0x05, 0xc8, 0x6a, 0x66, 0xc9, 0xf2, 0x53, 0x3d, 0xa2, 0x64, 0xf9, + 0xe9, 0x62, 0x8b, 0xe7, 0x5e, 0x2f, 0xc9, 0x7f, 0x77, 0x6e, 0xff, 0x1d, 0x00, 0x00, 0xff, 0xff, + 0x51, 0x5f, 0x0f, 0xde, 0xeb, 0x11, 0x00, 0x00, } diff --git a/src/productcatalogservice/server.go b/src/productcatalogservice/server.go index 2b2fa1d..02d8684 100644 --- a/src/productcatalogservice/server.go +++ b/src/productcatalogservice/server.go @@ -17,9 +17,9 @@ import ( var port = flag.Int("port", 3550, "port to listen at") var catalog = []*pb.Product{ - {Id: 1, Name: "shirt", Description: "nice shirt", Picture: "picture1", PriceUsd: &pb.MoneyAmount{Decimal: 53}}, - {Id: 2, Name: "pants", Description: "nice pants", Picture: "picture2", PriceUsd: &pb.MoneyAmount{Decimal: 81}}, - {Id: 3, Name: "hat", Description: "nice hat", Picture: "picture3", PriceUsd: &pb.MoneyAmount{Decimal: 20}}, + {Id: "1", Name: "shirt", Description: "nice shirt", Picture: "picture1", PriceUsd: &pb.MoneyAmount{Decimal: 53}}, + {Id: "2", Name: "pants", Description: "nice pants", Picture: "picture2", PriceUsd: &pb.MoneyAmount{Decimal: 81}}, + {Id: "3", Name: "hat", Description: "nice hat", Picture: "picture3", PriceUsd: &pb.MoneyAmount{Decimal: 20}}, } func main() { diff --git a/src/productcatalogservice/server_test.go b/src/productcatalogservice/server_test.go index 381faed..96b6a85 100644 --- a/src/productcatalogservice/server_test.go +++ b/src/productcatalogservice/server_test.go @@ -29,14 +29,14 @@ func TestServer(t *testing.T) { t.Error(diff) } - got, err := client.GetProduct(ctx, &pb.GetProductRequest{Id: 2}) + got, err := client.GetProduct(ctx, &pb.GetProductRequest{Id: "2"}) if err != nil { t.Fatal(err) } if want := catalog[1]; !proto.Equal(got, want) { t.Errorf("got %v, want %v", got, want) } - _, err = client.GetProduct(ctx, &pb.GetProductRequest{Id: -1}) + _, err = client.GetProduct(ctx, &pb.GetProductRequest{Id: "N/A"}) if got, want := status.Code(err), codes.NotFound; got != want { t.Errorf("got %s, want %s", got, want) }