You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

484 lines
20 KiB

  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // source: google/cloud/vision/v1p3beta1/product_search.proto
  3. package vision // import "google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1"
  4. import proto "github.com/golang/protobuf/proto"
  5. import fmt "fmt"
  6. import math "math"
  7. import timestamp "github.com/golang/protobuf/ptypes/timestamp"
  8. import _ "google.golang.org/genproto/googleapis/api/annotations"
  9. // Reference imports to suppress errors if they are not otherwise used.
  10. var _ = proto.Marshal
  11. var _ = fmt.Errorf
  12. var _ = math.Inf
  13. // This is a compile-time assertion to ensure that this generated file
  14. // is compatible with the proto package it is being compiled against.
  15. // A compilation error at this line likely means your copy of the
  16. // proto package needs to be updated.
  17. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  18. // Supported product search categories.
  19. type ProductSearchCategory int32
  20. const (
  21. // Default value used when a category is not specified.
  22. ProductSearchCategory_PRODUCT_SEARCH_CATEGORY_UNSPECIFIED ProductSearchCategory = 0
  23. // Shoes category.
  24. ProductSearchCategory_SHOES ProductSearchCategory = 1
  25. // Bags category.
  26. ProductSearchCategory_BAGS ProductSearchCategory = 2
  27. )
  28. var ProductSearchCategory_name = map[int32]string{
  29. 0: "PRODUCT_SEARCH_CATEGORY_UNSPECIFIED",
  30. 1: "SHOES",
  31. 2: "BAGS",
  32. }
  33. var ProductSearchCategory_value = map[string]int32{
  34. "PRODUCT_SEARCH_CATEGORY_UNSPECIFIED": 0,
  35. "SHOES": 1,
  36. "BAGS": 2,
  37. }
  38. func (x ProductSearchCategory) String() string {
  39. return proto.EnumName(ProductSearchCategory_name, int32(x))
  40. }
  41. func (ProductSearchCategory) EnumDescriptor() ([]byte, []int) {
  42. return fileDescriptor_product_search_bfcbf0ed2b6b70d5, []int{0}
  43. }
  44. // Specifies the fields to include in product search results.
  45. type ProductSearchResultsView int32
  46. const (
  47. // Product search results contain only `product_category` and `product_id`.
  48. // Default value.
  49. ProductSearchResultsView_BASIC ProductSearchResultsView = 0
  50. // Product search results contain `product_category`, `product_id`,
  51. // `image_uri`, and `score`.
  52. ProductSearchResultsView_FULL ProductSearchResultsView = 1
  53. )
  54. var ProductSearchResultsView_name = map[int32]string{
  55. 0: "BASIC",
  56. 1: "FULL",
  57. }
  58. var ProductSearchResultsView_value = map[string]int32{
  59. "BASIC": 0,
  60. "FULL": 1,
  61. }
  62. func (x ProductSearchResultsView) String() string {
  63. return proto.EnumName(ProductSearchResultsView_name, int32(x))
  64. }
  65. func (ProductSearchResultsView) EnumDescriptor() ([]byte, []int) {
  66. return fileDescriptor_product_search_bfcbf0ed2b6b70d5, []int{1}
  67. }
  68. // Parameters for a product search request.
  69. type ProductSearchParams struct {
  70. // The resource name of the catalog to search.
  71. //
  72. // Format is: `productSearch/catalogs/CATALOG_NAME`.
  73. CatalogName string `protobuf:"bytes,1,opt,name=catalog_name,json=catalogName,proto3" json:"catalog_name,omitempty"`
  74. // The category to search in.
  75. // Optional. It is inferred by the system if it is not specified.
  76. // [Deprecated] Use `product_category`.
  77. Category ProductSearchCategory `protobuf:"varint,2,opt,name=category,proto3,enum=google.cloud.vision.v1p3beta1.ProductSearchCategory" json:"category,omitempty"`
  78. // The product category to search in.
  79. // Optional. It is inferred by the system if it is not specified.
  80. // Supported values are `bag`, `shoe`, `sunglasses`, `dress`, `outerwear`,
  81. // `skirt`, `top`, `shorts`, and `pants`.
  82. ProductCategory string `protobuf:"bytes,5,opt,name=product_category,json=productCategory,proto3" json:"product_category,omitempty"`
  83. // The bounding polygon around the area of interest in the image.
  84. // Optional. If it is not specified, system discretion will be applied.
  85. // [Deprecated] Use `bounding_poly`.
  86. NormalizedBoundingPoly *NormalizedBoundingPoly `protobuf:"bytes,3,opt,name=normalized_bounding_poly,json=normalizedBoundingPoly,proto3" json:"normalized_bounding_poly,omitempty"`
  87. // The bounding polygon around the area of interest in the image.
  88. // Optional. If it is not specified, system discretion will be applied.
  89. BoundingPoly *BoundingPoly `protobuf:"bytes,9,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"`
  90. // Specifies the verbosity of the product search results.
  91. // Optional. Defaults to `BASIC`.
  92. View ProductSearchResultsView `protobuf:"varint,4,opt,name=view,proto3,enum=google.cloud.vision.v1p3beta1.ProductSearchResultsView" json:"view,omitempty"`
  93. // The resource name of a
  94. // [ProductSet][google.cloud.vision.v1p3beta1.ProductSet] to be searched for
  95. // similar images.
  96. //
  97. // Format is:
  98. // `projects/PROJECT_ID/locations/LOC_ID/productSets/PRODUCT_SET_ID`.
  99. ProductSet string `protobuf:"bytes,6,opt,name=product_set,json=productSet,proto3" json:"product_set,omitempty"`
  100. // The list of product categories to search in. Currently, we only consider
  101. // the first category, and either "homegoods" or "apparel" should be
  102. // specified.
  103. ProductCategories []string `protobuf:"bytes,7,rep,name=product_categories,json=productCategories,proto3" json:"product_categories,omitempty"`
  104. // The filtering expression. This can be used to restrict search results based
  105. // on Product labels. We currently support an AND of OR of key-value
  106. // expressions, where each expression within an OR must have the same key.
  107. //
  108. // For example, "(color = red OR color = blue) AND brand = Google" is
  109. // acceptable, but not "(color = red OR brand = Google)" or "color: red".
  110. Filter string `protobuf:"bytes,8,opt,name=filter,proto3" json:"filter,omitempty"`
  111. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  112. XXX_unrecognized []byte `json:"-"`
  113. XXX_sizecache int32 `json:"-"`
  114. }
  115. func (m *ProductSearchParams) Reset() { *m = ProductSearchParams{} }
  116. func (m *ProductSearchParams) String() string { return proto.CompactTextString(m) }
  117. func (*ProductSearchParams) ProtoMessage() {}
  118. func (*ProductSearchParams) Descriptor() ([]byte, []int) {
  119. return fileDescriptor_product_search_bfcbf0ed2b6b70d5, []int{0}
  120. }
  121. func (m *ProductSearchParams) XXX_Unmarshal(b []byte) error {
  122. return xxx_messageInfo_ProductSearchParams.Unmarshal(m, b)
  123. }
  124. func (m *ProductSearchParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  125. return xxx_messageInfo_ProductSearchParams.Marshal(b, m, deterministic)
  126. }
  127. func (dst *ProductSearchParams) XXX_Merge(src proto.Message) {
  128. xxx_messageInfo_ProductSearchParams.Merge(dst, src)
  129. }
  130. func (m *ProductSearchParams) XXX_Size() int {
  131. return xxx_messageInfo_ProductSearchParams.Size(m)
  132. }
  133. func (m *ProductSearchParams) XXX_DiscardUnknown() {
  134. xxx_messageInfo_ProductSearchParams.DiscardUnknown(m)
  135. }
  136. var xxx_messageInfo_ProductSearchParams proto.InternalMessageInfo
  137. func (m *ProductSearchParams) GetCatalogName() string {
  138. if m != nil {
  139. return m.CatalogName
  140. }
  141. return ""
  142. }
  143. func (m *ProductSearchParams) GetCategory() ProductSearchCategory {
  144. if m != nil {
  145. return m.Category
  146. }
  147. return ProductSearchCategory_PRODUCT_SEARCH_CATEGORY_UNSPECIFIED
  148. }
  149. func (m *ProductSearchParams) GetProductCategory() string {
  150. if m != nil {
  151. return m.ProductCategory
  152. }
  153. return ""
  154. }
  155. func (m *ProductSearchParams) GetNormalizedBoundingPoly() *NormalizedBoundingPoly {
  156. if m != nil {
  157. return m.NormalizedBoundingPoly
  158. }
  159. return nil
  160. }
  161. func (m *ProductSearchParams) GetBoundingPoly() *BoundingPoly {
  162. if m != nil {
  163. return m.BoundingPoly
  164. }
  165. return nil
  166. }
  167. func (m *ProductSearchParams) GetView() ProductSearchResultsView {
  168. if m != nil {
  169. return m.View
  170. }
  171. return ProductSearchResultsView_BASIC
  172. }
  173. func (m *ProductSearchParams) GetProductSet() string {
  174. if m != nil {
  175. return m.ProductSet
  176. }
  177. return ""
  178. }
  179. func (m *ProductSearchParams) GetProductCategories() []string {
  180. if m != nil {
  181. return m.ProductCategories
  182. }
  183. return nil
  184. }
  185. func (m *ProductSearchParams) GetFilter() string {
  186. if m != nil {
  187. return m.Filter
  188. }
  189. return ""
  190. }
  191. // Results for a product search request.
  192. type ProductSearchResults struct {
  193. // Product category.
  194. // [Deprecated] Use `product_category`.
  195. Category ProductSearchCategory `protobuf:"varint,1,opt,name=category,proto3,enum=google.cloud.vision.v1p3beta1.ProductSearchCategory" json:"category,omitempty"`
  196. // Product category.
  197. // Supported values are `bag` and `shoe`.
  198. // [Deprecated] `product_category` is provided in each Product.
  199. ProductCategory string `protobuf:"bytes,4,opt,name=product_category,json=productCategory,proto3" json:"product_category,omitempty"`
  200. // Timestamp of the index which provided these results. Changes made after
  201. // this time are not reflected in the current results.
  202. IndexTime *timestamp.Timestamp `protobuf:"bytes,2,opt,name=index_time,json=indexTime,proto3" json:"index_time,omitempty"`
  203. // List of detected products.
  204. Products []*ProductSearchResults_ProductInfo `protobuf:"bytes,3,rep,name=products,proto3" json:"products,omitempty"`
  205. // List of results, one for each product match.
  206. Results []*ProductSearchResults_Result `protobuf:"bytes,5,rep,name=results,proto3" json:"results,omitempty"`
  207. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  208. XXX_unrecognized []byte `json:"-"`
  209. XXX_sizecache int32 `json:"-"`
  210. }
  211. func (m *ProductSearchResults) Reset() { *m = ProductSearchResults{} }
  212. func (m *ProductSearchResults) String() string { return proto.CompactTextString(m) }
  213. func (*ProductSearchResults) ProtoMessage() {}
  214. func (*ProductSearchResults) Descriptor() ([]byte, []int) {
  215. return fileDescriptor_product_search_bfcbf0ed2b6b70d5, []int{1}
  216. }
  217. func (m *ProductSearchResults) XXX_Unmarshal(b []byte) error {
  218. return xxx_messageInfo_ProductSearchResults.Unmarshal(m, b)
  219. }
  220. func (m *ProductSearchResults) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  221. return xxx_messageInfo_ProductSearchResults.Marshal(b, m, deterministic)
  222. }
  223. func (dst *ProductSearchResults) XXX_Merge(src proto.Message) {
  224. xxx_messageInfo_ProductSearchResults.Merge(dst, src)
  225. }
  226. func (m *ProductSearchResults) XXX_Size() int {
  227. return xxx_messageInfo_ProductSearchResults.Size(m)
  228. }
  229. func (m *ProductSearchResults) XXX_DiscardUnknown() {
  230. xxx_messageInfo_ProductSearchResults.DiscardUnknown(m)
  231. }
  232. var xxx_messageInfo_ProductSearchResults proto.InternalMessageInfo
  233. func (m *ProductSearchResults) GetCategory() ProductSearchCategory {
  234. if m != nil {
  235. return m.Category
  236. }
  237. return ProductSearchCategory_PRODUCT_SEARCH_CATEGORY_UNSPECIFIED
  238. }
  239. func (m *ProductSearchResults) GetProductCategory() string {
  240. if m != nil {
  241. return m.ProductCategory
  242. }
  243. return ""
  244. }
  245. func (m *ProductSearchResults) GetIndexTime() *timestamp.Timestamp {
  246. if m != nil {
  247. return m.IndexTime
  248. }
  249. return nil
  250. }
  251. func (m *ProductSearchResults) GetProducts() []*ProductSearchResults_ProductInfo {
  252. if m != nil {
  253. return m.Products
  254. }
  255. return nil
  256. }
  257. func (m *ProductSearchResults) GetResults() []*ProductSearchResults_Result {
  258. if m != nil {
  259. return m.Results
  260. }
  261. return nil
  262. }
  263. // Information about a product.
  264. type ProductSearchResults_ProductInfo struct {
  265. // Product ID.
  266. ProductId string `protobuf:"bytes,1,opt,name=product_id,json=productId,proto3" json:"product_id,omitempty"`
  267. // The URI of the image which matched the query image.
  268. //
  269. // This field is returned only if `view` is set to `FULL` in
  270. // the request.
  271. ImageUri string `protobuf:"bytes,2,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"`
  272. // A confidence level on the match, ranging from 0 (no confidence) to
  273. // 1 (full confidence).
  274. //
  275. // This field is returned only if `view` is set to `FULL` in
  276. // the request.
  277. Score float32 `protobuf:"fixed32,3,opt,name=score,proto3" json:"score,omitempty"`
  278. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  279. XXX_unrecognized []byte `json:"-"`
  280. XXX_sizecache int32 `json:"-"`
  281. }
  282. func (m *ProductSearchResults_ProductInfo) Reset() { *m = ProductSearchResults_ProductInfo{} }
  283. func (m *ProductSearchResults_ProductInfo) String() string { return proto.CompactTextString(m) }
  284. func (*ProductSearchResults_ProductInfo) ProtoMessage() {}
  285. func (*ProductSearchResults_ProductInfo) Descriptor() ([]byte, []int) {
  286. return fileDescriptor_product_search_bfcbf0ed2b6b70d5, []int{1, 0}
  287. }
  288. func (m *ProductSearchResults_ProductInfo) XXX_Unmarshal(b []byte) error {
  289. return xxx_messageInfo_ProductSearchResults_ProductInfo.Unmarshal(m, b)
  290. }
  291. func (m *ProductSearchResults_ProductInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  292. return xxx_messageInfo_ProductSearchResults_ProductInfo.Marshal(b, m, deterministic)
  293. }
  294. func (dst *ProductSearchResults_ProductInfo) XXX_Merge(src proto.Message) {
  295. xxx_messageInfo_ProductSearchResults_ProductInfo.Merge(dst, src)
  296. }
  297. func (m *ProductSearchResults_ProductInfo) XXX_Size() int {
  298. return xxx_messageInfo_ProductSearchResults_ProductInfo.Size(m)
  299. }
  300. func (m *ProductSearchResults_ProductInfo) XXX_DiscardUnknown() {
  301. xxx_messageInfo_ProductSearchResults_ProductInfo.DiscardUnknown(m)
  302. }
  303. var xxx_messageInfo_ProductSearchResults_ProductInfo proto.InternalMessageInfo
  304. func (m *ProductSearchResults_ProductInfo) GetProductId() string {
  305. if m != nil {
  306. return m.ProductId
  307. }
  308. return ""
  309. }
  310. func (m *ProductSearchResults_ProductInfo) GetImageUri() string {
  311. if m != nil {
  312. return m.ImageUri
  313. }
  314. return ""
  315. }
  316. func (m *ProductSearchResults_ProductInfo) GetScore() float32 {
  317. if m != nil {
  318. return m.Score
  319. }
  320. return 0
  321. }
  322. // Information about a product.
  323. type ProductSearchResults_Result struct {
  324. // The Product.
  325. Product *Product `protobuf:"bytes,1,opt,name=product,proto3" json:"product,omitempty"`
  326. // A confidence level on the match, ranging from 0 (no confidence) to
  327. // 1 (full confidence).
  328. //
  329. // This field is returned only if `view` is set to `FULL` in
  330. // the request.
  331. Score float32 `protobuf:"fixed32,2,opt,name=score,proto3" json:"score,omitempty"`
  332. // The resource name of the image from the product that is the closest match
  333. // to the query.
  334. Image string `protobuf:"bytes,3,opt,name=image,proto3" json:"image,omitempty"`
  335. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  336. XXX_unrecognized []byte `json:"-"`
  337. XXX_sizecache int32 `json:"-"`
  338. }
  339. func (m *ProductSearchResults_Result) Reset() { *m = ProductSearchResults_Result{} }
  340. func (m *ProductSearchResults_Result) String() string { return proto.CompactTextString(m) }
  341. func (*ProductSearchResults_Result) ProtoMessage() {}
  342. func (*ProductSearchResults_Result) Descriptor() ([]byte, []int) {
  343. return fileDescriptor_product_search_bfcbf0ed2b6b70d5, []int{1, 1}
  344. }
  345. func (m *ProductSearchResults_Result) XXX_Unmarshal(b []byte) error {
  346. return xxx_messageInfo_ProductSearchResults_Result.Unmarshal(m, b)
  347. }
  348. func (m *ProductSearchResults_Result) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  349. return xxx_messageInfo_ProductSearchResults_Result.Marshal(b, m, deterministic)
  350. }
  351. func (dst *ProductSearchResults_Result) XXX_Merge(src proto.Message) {
  352. xxx_messageInfo_ProductSearchResults_Result.Merge(dst, src)
  353. }
  354. func (m *ProductSearchResults_Result) XXX_Size() int {
  355. return xxx_messageInfo_ProductSearchResults_Result.Size(m)
  356. }
  357. func (m *ProductSearchResults_Result) XXX_DiscardUnknown() {
  358. xxx_messageInfo_ProductSearchResults_Result.DiscardUnknown(m)
  359. }
  360. var xxx_messageInfo_ProductSearchResults_Result proto.InternalMessageInfo
  361. func (m *ProductSearchResults_Result) GetProduct() *Product {
  362. if m != nil {
  363. return m.Product
  364. }
  365. return nil
  366. }
  367. func (m *ProductSearchResults_Result) GetScore() float32 {
  368. if m != nil {
  369. return m.Score
  370. }
  371. return 0
  372. }
  373. func (m *ProductSearchResults_Result) GetImage() string {
  374. if m != nil {
  375. return m.Image
  376. }
  377. return ""
  378. }
  379. func init() {
  380. proto.RegisterType((*ProductSearchParams)(nil), "google.cloud.vision.v1p3beta1.ProductSearchParams")
  381. proto.RegisterType((*ProductSearchResults)(nil), "google.cloud.vision.v1p3beta1.ProductSearchResults")
  382. proto.RegisterType((*ProductSearchResults_ProductInfo)(nil), "google.cloud.vision.v1p3beta1.ProductSearchResults.ProductInfo")
  383. proto.RegisterType((*ProductSearchResults_Result)(nil), "google.cloud.vision.v1p3beta1.ProductSearchResults.Result")
  384. proto.RegisterEnum("google.cloud.vision.v1p3beta1.ProductSearchCategory", ProductSearchCategory_name, ProductSearchCategory_value)
  385. proto.RegisterEnum("google.cloud.vision.v1p3beta1.ProductSearchResultsView", ProductSearchResultsView_name, ProductSearchResultsView_value)
  386. }
  387. func init() {
  388. proto.RegisterFile("google/cloud/vision/v1p3beta1/product_search.proto", fileDescriptor_product_search_bfcbf0ed2b6b70d5)
  389. }
  390. var fileDescriptor_product_search_bfcbf0ed2b6b70d5 = []byte{
  391. // 698 bytes of a gzipped FileDescriptorProto
  392. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xdf, 0x6e, 0xd3, 0x30,
  393. 0x14, 0xc6, 0x97, 0xfe, 0x5b, 0x73, 0x3a, 0xa0, 0x98, 0x31, 0x45, 0x85, 0x69, 0xdd, 0x90, 0xa0,
  394. 0x0c, 0x48, 0xb4, 0x0e, 0x84, 0x18, 0x17, 0xd0, 0x76, 0xdd, 0x56, 0x31, 0x6d, 0x91, 0xdb, 0x22,
  395. 0x01, 0x17, 0x91, 0x9b, 0x78, 0xc1, 0x52, 0x12, 0x47, 0x49, 0xda, 0x51, 0xee, 0x78, 0x20, 0x5e,
  396. 0x88, 0x27, 0xe1, 0x12, 0xd5, 0x49, 0xba, 0x15, 0x75, 0x1b, 0x9b, 0xc4, 0x55, 0x75, 0x4e, 0xfd,
  397. 0xfb, 0x3e, 0xfb, 0xe4, 0xb3, 0xa1, 0x6e, 0x73, 0x6e, 0x3b, 0x54, 0x33, 0x1d, 0x3e, 0xb4, 0xb4,
  398. 0x11, 0x0b, 0x19, 0xf7, 0xb4, 0xd1, 0x96, 0xbf, 0x3d, 0xa0, 0x11, 0xd9, 0xd2, 0xfc, 0x80, 0x5b,
  399. 0x43, 0x33, 0x32, 0x42, 0x4a, 0x02, 0xf3, 0xab, 0xea, 0x07, 0x3c, 0xe2, 0x68, 0x35, 0x66, 0x54,
  400. 0xc1, 0xa8, 0x31, 0xa3, 0x4e, 0x99, 0xca, 0xc3, 0x44, 0x92, 0xf8, 0x4c, 0x23, 0x9e, 0xc7, 0x23,
  401. 0x12, 0x31, 0xee, 0x85, 0x31, 0x5c, 0x79, 0x7e, 0xb9, 0xa1, 0x4d, 0xb9, 0x4b, 0xa3, 0x60, 0x9c,
  402. 0xac, 0xde, 0xb9, 0xce, 0xf6, 0x8c, 0x90, 0x06, 0x23, 0x66, 0xd2, 0x84, 0x5d, 0x4b, 0x58, 0x51,
  403. 0x0d, 0x86, 0x27, 0x5a, 0xc4, 0x5c, 0x1a, 0x46, 0xc4, 0xf5, 0xe3, 0x05, 0x1b, 0x3f, 0x73, 0x70,
  404. 0x4f, 0x8f, 0x15, 0xba, 0x42, 0x40, 0x27, 0x01, 0x71, 0x43, 0xb4, 0x0e, 0x4b, 0x26, 0x89, 0x88,
  405. 0xc3, 0x6d, 0xc3, 0x23, 0x2e, 0x55, 0xa4, 0xaa, 0x54, 0x93, 0x71, 0x29, 0xe9, 0x1d, 0x11, 0x97,
  406. 0x22, 0x1d, 0x8a, 0x26, 0x89, 0xa8, 0xcd, 0x83, 0xb1, 0x92, 0xa9, 0x4a, 0xb5, 0xdb, 0xf5, 0x97,
  407. 0xea, 0xa5, 0x53, 0x51, 0x67, 0x8c, 0x5a, 0x09, 0x8b, 0xa7, 0x2a, 0xe8, 0x29, 0x94, 0xd3, 0xd3,
  408. 0x4c, 0x95, 0xf3, 0xc2, 0xf8, 0x4e, 0xd2, 0x4f, 0x21, 0xc4, 0x41, 0xf1, 0x78, 0xe0, 0x12, 0x87,
  409. 0x7d, 0xa7, 0x96, 0x31, 0xe0, 0x43, 0xcf, 0x62, 0x9e, 0x6d, 0xf8, 0xdc, 0x19, 0x2b, 0xd9, 0xaa,
  410. 0x54, 0x2b, 0xd5, 0x5f, 0x5d, 0xb1, 0x99, 0xa3, 0x29, 0xde, 0x4c, 0x68, 0x9d, 0x3b, 0x63, 0xbc,
  411. 0xe2, 0xcd, 0xed, 0x23, 0x1d, 0x6e, 0xcd, 0xba, 0xc8, 0xc2, 0xe5, 0xd9, 0x15, 0x2e, 0x33, 0xda,
  412. 0x4b, 0x83, 0xf3, 0x8a, 0x1f, 0x20, 0x37, 0x62, 0xf4, 0x54, 0xc9, 0x89, 0xd9, 0xbd, 0xbe, 0xce,
  413. 0xec, 0x30, 0x0d, 0x87, 0x4e, 0x14, 0x7e, 0x64, 0xf4, 0x14, 0x0b, 0x11, 0xb4, 0x06, 0xa5, 0xb3,
  414. 0x20, 0x44, 0x4a, 0x41, 0x4c, 0x0d, 0xfc, 0x14, 0x8a, 0xd0, 0x0b, 0x40, 0x7f, 0xcd, 0x96, 0xd1,
  415. 0x50, 0x59, 0xac, 0x66, 0x6b, 0x32, 0xbe, 0x3b, 0x3b, 0x5d, 0x46, 0x43, 0xb4, 0x02, 0x85, 0x13,
  416. 0xe6, 0x44, 0x34, 0x50, 0x8a, 0x42, 0x2a, 0xa9, 0x36, 0x7e, 0xe5, 0x60, 0x79, 0xde, 0x56, 0x66,
  417. 0xd2, 0x20, 0xfd, 0xb7, 0x34, 0xe4, 0xe6, 0xa7, 0xe1, 0x0d, 0x00, 0xf3, 0x2c, 0xfa, 0xcd, 0x98,
  418. 0xc4, 0x5b, 0x84, 0xb1, 0x54, 0xaf, 0xa4, 0xf6, 0x69, 0xf6, 0xd5, 0x5e, 0x9a, 0x7d, 0x2c, 0x8b,
  419. 0xd5, 0x93, 0x1a, 0x7d, 0x81, 0x62, 0xa2, 0x16, 0x2a, 0xd9, 0x6a, 0xb6, 0x56, 0xaa, 0xbf, 0xbb,
  420. 0xc1, 0x97, 0x48, 0x9b, 0x1d, 0xef, 0x84, 0xe3, 0xa9, 0x20, 0xea, 0xc1, 0x62, 0x10, 0x2f, 0x50,
  421. 0xf2, 0x42, 0x7b, 0xe7, 0x26, 0xda, 0xf1, 0x2f, 0x4e, 0xa5, 0x2a, 0x06, 0x94, 0xce, 0xd9, 0xa1,
  422. 0x55, 0x48, 0xbf, 0xb3, 0xc1, 0xac, 0xe4, 0xa2, 0xca, 0x49, 0xa7, 0x63, 0xa1, 0x07, 0x20, 0x33,
  423. 0x97, 0xd8, 0xd4, 0x18, 0x06, 0x4c, 0x8c, 0x46, 0xc6, 0x45, 0xd1, 0xe8, 0x07, 0x0c, 0x2d, 0x43,
  424. 0x3e, 0x34, 0x79, 0x40, 0xc5, 0x9d, 0xc9, 0xe0, 0xb8, 0xa8, 0x8c, 0xa0, 0x10, 0x7b, 0xa2, 0xf7,
  425. 0xb0, 0x98, 0x28, 0x09, 0xe1, 0x52, 0xfd, 0xf1, 0xbf, 0x1d, 0x00, 0xa7, 0xd8, 0x99, 0x43, 0xe6,
  426. 0x9c, 0xc3, 0xa4, 0x2b, 0xf6, 0x20, 0x7c, 0x65, 0x1c, 0x17, 0x9b, 0x7d, 0xb8, 0x3f, 0x37, 0x14,
  427. 0xe8, 0x09, 0x3c, 0xd2, 0xf1, 0xf1, 0x6e, 0xbf, 0xd5, 0x33, 0xba, 0xed, 0x06, 0x6e, 0x1d, 0x18,
  428. 0xad, 0x46, 0xaf, 0xbd, 0x7f, 0x8c, 0x3f, 0x19, 0xfd, 0xa3, 0xae, 0xde, 0x6e, 0x75, 0xf6, 0x3a,
  429. 0xed, 0xdd, 0xf2, 0x02, 0x92, 0x21, 0xdf, 0x3d, 0x38, 0x6e, 0x77, 0xcb, 0x12, 0x2a, 0x42, 0xae,
  430. 0xd9, 0xd8, 0xef, 0x96, 0x33, 0x9b, 0x1a, 0x28, 0x17, 0xdd, 0x9e, 0x09, 0xd0, 0x6c, 0x74, 0x3b,
  431. 0xad, 0xf2, 0xc2, 0x04, 0xd8, 0xeb, 0x1f, 0x1e, 0x96, 0xa5, 0xe6, 0x0f, 0x09, 0xd6, 0x4d, 0xee,
  432. 0x5e, 0x7e, 0xd4, 0x26, 0x9a, 0x7d, 0x37, 0x27, 0x29, 0xd3, 0xa5, 0xcf, 0xad, 0x04, 0xb2, 0xb9,
  433. 0x43, 0x3c, 0x5b, 0xe5, 0x81, 0xad, 0xd9, 0xd4, 0x13, 0x19, 0xd4, 0xe2, 0xbf, 0x88, 0xcf, 0xc2,
  434. 0x0b, 0x1e, 0xf3, 0xb7, 0x71, 0xe3, 0xb7, 0x24, 0x0d, 0x0a, 0x02, 0xd9, 0xfe, 0x13, 0x00, 0x00,
  435. 0xff, 0xff, 0x4f, 0x50, 0xae, 0xbc, 0x9d, 0x06, 0x00, 0x00,
  436. }