fbcrawl-colly 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 00d52fcc50bd651adaa80cf6102d7cc3997a07605ebb91fd33006b6e535ed6fc
4
- data.tar.gz: 24388fa7c98d6dfbe58ba195c330ea3c363f6ef8e586873dd9e485ad29907a6c
3
+ metadata.gz: eed929533973a523ed9cc5ac0cabf35559cb2e50e1c028a7ef2d8b90de15b58b
4
+ data.tar.gz: 385c7dcd852e31acdc3d591b323ba4eb2b8d979b89c8fe55a55e18b00fbbb691
5
5
  SHA512:
6
- metadata.gz: 15622279b09030f929218482add87878b58fdcb1e89e1ab8a1124531435707dbe26367fee75204a55fc88f8486c47cbb6ddfdb86035aa24694b1b7d6639aaecc
7
- data.tar.gz: df50b30ad0234c824505cca54fdf33d0be54c4725c684f0317b1eba81f89d22d7b434bec4e9373b3d43dd830dc17693ac2fb785e75cefc71c6cbeefc44da2616
6
+ metadata.gz: 16777a1a0ae7d48b2ce7ac3bd3573a351903321a009e81d649379aa8f508986ae4511d0ed85101c8605910d383dfa9ba8b7748d759ab05c7a7076e32c5cf49cd
7
+ data.tar.gz: d902d6226148cadd62d1e0c5a45419cfdd1343831bcfd5dced56bd298982a51d1da1835b048925b347351a01e63e875e8b295e568fa803b512c57183484fd2c6
@@ -1,17 +1,17 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- fbcrawl-colly (1.0.0)
4
+ fbcrawl-colly (1.0.1)
5
5
  google-protobuf
6
6
  grpc
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- google-protobuf (3.13.0-universal-darwin)
11
+ google-protobuf (3.13.0)
12
12
  googleapis-common-protos-types (1.0.5)
13
13
  google-protobuf (~> 3.11)
14
- grpc (1.30.2-universal-darwin)
14
+ grpc (1.30.2)
15
15
  google-protobuf (~> 3.12)
16
16
  googleapis-common-protos-types (~> 1.0)
17
17
  minitest (5.14.1)
@@ -10,6 +10,7 @@ service Grpc {
10
10
  rpc Login (LoginRequest) returns (LoginResponse) {}
11
11
  rpc LoginWithCookies (LoginWithCookiesRequest) returns (Empty) {}
12
12
  rpc FetchGroupInfo (FetchGroupInfoRequest) returns (FacebookGroup) {}
13
+ rpc FetchUserInfo (FetchUserInfoRequest) returns (FacebookUser) {}
13
14
  rpc FetchGroupFeed (FetchGroupFeedRequest) returns (FacebookPostList) {}
14
15
  rpc FetchPost (FetchPostRequest) returns (FacebookPost) {}
15
16
  rpc FetchContentImages (FetchContentImagesRequest) returns (FacebookImageList) {}
@@ -45,6 +46,11 @@ message FetchGroupInfoRequest {
45
46
  string group_username = 2;
46
47
  }
47
48
 
49
+ message FetchUserInfoRequest {
50
+ Pointer pointer = 1;
51
+ string username = 2;
52
+ }
53
+
48
54
  message FetchGroupFeedRequest {
49
55
  Pointer pointer = 1;
50
56
  int64 group_id = 2;
@@ -79,6 +85,8 @@ message FacebookGroup {
79
85
  message FacebookUser {
80
86
  int64 id = 1;
81
87
  string name = 2;
88
+ string username = 3;
89
+ int64 friend_count =4;
82
90
  }
83
91
 
84
92
  message FacebookPost {
@@ -35,7 +35,7 @@ type FbDataInsight struct {
35
35
  FbDataPostContext `json:"post_context"`
36
36
  }
37
37
  type FbDataFt struct {
38
- ContentOwnerIdNew int64 `json:"content_owner_id_new"`
38
+ ContentOwnerIdNew json.Number `json:"content_owner_id_new"`
39
39
  PhotoAttachmentsList []string `json:"photo_attachments_list"`
40
40
  PhotoId int64 `json:"photo_id,string"`
41
41
  PageId int64 `json:"page_id,string"`
@@ -205,7 +205,7 @@ func (f *Fbcolly) FetchGroupFeed(groupId int64, nextCursor string) (error, *pb.F
205
205
  collector.OnHTML("#m_group_stories_container > :last-child a", func(element *colly.HTMLElement) {
206
206
  result.NextCursor = "http://mbasic.facebook.com" + element.Attr("href")
207
207
  })
208
- collector.OnHTML("div[role=\"article\"]", func(element *colly.HTMLElement) {
208
+ collector.OnHTML("#m_group_stories_container div[role=\"article\"]", func(element *colly.HTMLElement) {
209
209
  dataElement := element
210
210
  post := &pb.FacebookPost{}
211
211
  var fbDataFt FbDataFt
@@ -220,8 +220,9 @@ func (f *Fbcolly) FetchGroupFeed(groupId int64, nextCursor string) (error, *pb.F
220
220
  logger.Info("Post ", fbDataFt)
221
221
  post.Id = fbDataFt.TopLevelPostId
222
222
  post.Group = &pb.FacebookGroup{Id: fbDataFt.PageId, Name: dataElement.DOM.Find("h3 strong:nth-child(2) a").Text()}
223
+ userId, _ := fbDataFt.ContentOwnerIdNew.Int64()
223
224
  post.User = &pb.FacebookUser{
224
- Id: fbDataFt.ContentOwnerIdNew,
225
+ Id: userId,
225
226
  Name: dataElement.DOM.Find("h3 strong:nth-child(1) a").Text(),
226
227
  }
227
228
  post.CreatedAt = fbDataFt.PageInsights[strconv.FormatInt(fbDataFt.PageId, 10)].PublishTime
@@ -264,6 +265,33 @@ func (f *Fbcolly) FetchGroupFeed(groupId int64, nextCursor string) (error, *pb.F
264
265
  return err, &result
265
266
  }
266
267
 
268
+ func (f *Fbcolly) FetchUserInfo(userIdOrUsername string) (error, *pb.FacebookUser) {
269
+ collector := f.collector.Clone()
270
+ err := setupSharedCollector(collector)
271
+
272
+ result := &pb.FacebookUser{}
273
+
274
+ collector.OnHTML("a[href*=\"lst=\"]", func(element *colly.HTMLElement) {
275
+ parsed, _ := url.Parse(element.Attr("href"))
276
+ result.Username = strings.Split(parsed.Path[1:], "/")[0]
277
+ result.Id = getUserIdFromCommentHref(parsed.Query().Get("lst"))
278
+ })
279
+
280
+ collector.OnHTML("a[href*=\"/friends\"]", func(element *colly.HTMLElement) {
281
+ result.FriendCount = getNumberFromText(element.Text)
282
+ })
283
+
284
+ collector.OnHTML("#objects_container", func(element *colly.HTMLElement) {
285
+ result.Name = element.DOM.Find("strong").First().Text()
286
+ })
287
+
288
+ err = collector.Visit(fmt.Sprintf("https://mbasic.facebook.com/%s", userIdOrUsername))
289
+ if err != nil {
290
+ logger.Error("crawl by colly err:", err)
291
+ }
292
+ return err, result
293
+ }
294
+
267
295
  func (f *Fbcolly) FetchGroupInfo(groupIdOrUsername string) (error, *pb.FacebookGroup) {
268
296
  collector := f.collector.Clone()
269
297
  err := setupSharedCollector(collector)
@@ -346,8 +374,9 @@ func (f *Fbcolly) FetchPost(groupId int64, postId int64, commentNextCursor strin
346
374
  logger.Info("Post ", result)
347
375
  post.Id = result.TopLevelPostId
348
376
  post.Group = &pb.FacebookGroup{Id: result.PageId, Name: dataElement.Find("h3 strong:last-child a").Text()}
377
+ userId, _ := result.ContentOwnerIdNew.Int64()
349
378
  post.User = &pb.FacebookUser{
350
- Id: result.ContentOwnerIdNew,
379
+ Id: userId,
351
380
  Name: dataElement.Find("h3 strong:first-child a").Text(),
352
381
  }
353
382
  post.CreatedAt = result.PageInsights[strconv.FormatInt(result.PageId, 10)].PublishTime
@@ -383,12 +412,13 @@ func (f *Fbcolly) FetchPost(groupId int64, postId int64, commentNextCursor strin
383
412
  commentId, _ := strconv.ParseInt(selection.AttrOr("id", ""), 10, 64)
384
413
  logger.Info("comment", commentId)
385
414
  createdAtWhenResult, _ := f.w.Parse(selection.Find("abbr").Text(), time.Now())
415
+ parsed, _ := url.Parse(selection.Find("h3 > a").AttrOr("href", ""))
386
416
  post.Comments.Comments = append(post.Comments.Comments, &pb.FacebookComment{
387
417
  Id: commentId,
388
418
  Post: &pb.FacebookPost{Id: post.Id},
389
419
  User: &pb.FacebookUser{
390
- Id: getUserIdFromCommentHref(selection.Find("a[href*=\"#comment_form_\"]").AttrOr("href", "")),
391
- Name: selection.Find("h3 > a").Text(),
420
+ Username: parsed.Path[1:],
421
+ Name: selection.Find("h3 > a").Text(),
392
422
  },
393
423
  Content: selection.Find("h3 + div").Text(),
394
424
  CreatedAt: createdAtWhenResult.Time.Unix(),
@@ -420,7 +450,7 @@ func (f *Fbcolly) LoginWithCookies(cookies string) error {
420
450
  //}
421
451
 
422
452
  func getUserIdFromCommentHref(href string) int64 {
423
- match := regexp.MustCompile("#comment_form_(\\d+)").FindStringSubmatch(href)
453
+ match := regexp.MustCompile("\\d+:(\\d+)\\d+").FindStringSubmatch(href)
424
454
  if len(match) > 0 {
425
455
  id, _ := strconv.ParseInt(match[1], 10, 64)
426
456
  return id
@@ -1,7 +1,7 @@
1
1
  // Code generated by protoc-gen-go. DO NOT EDIT.
2
2
  // versions:
3
3
  // protoc-gen-go v1.25.0-devel
4
- // protoc v3.12.4
4
+ // protoc v3.12.3
5
5
  // source: fbcrawl.proto
6
6
 
7
7
  package pb
@@ -338,6 +338,61 @@ func (x *FetchGroupInfoRequest) GetGroupUsername() string {
338
338
  return ""
339
339
  }
340
340
 
341
+ type FetchUserInfoRequest struct {
342
+ state protoimpl.MessageState
343
+ sizeCache protoimpl.SizeCache
344
+ unknownFields protoimpl.UnknownFields
345
+
346
+ Pointer *Pointer `protobuf:"bytes,1,opt,name=pointer,proto3" json:"pointer,omitempty"`
347
+ Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"`
348
+ }
349
+
350
+ func (x *FetchUserInfoRequest) Reset() {
351
+ *x = FetchUserInfoRequest{}
352
+ if protoimpl.UnsafeEnabled {
353
+ mi := &file_fbcrawl_proto_msgTypes[6]
354
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
355
+ ms.StoreMessageInfo(mi)
356
+ }
357
+ }
358
+
359
+ func (x *FetchUserInfoRequest) String() string {
360
+ return protoimpl.X.MessageStringOf(x)
361
+ }
362
+
363
+ func (*FetchUserInfoRequest) ProtoMessage() {}
364
+
365
+ func (x *FetchUserInfoRequest) ProtoReflect() protoreflect.Message {
366
+ mi := &file_fbcrawl_proto_msgTypes[6]
367
+ if protoimpl.UnsafeEnabled && x != nil {
368
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
369
+ if ms.LoadMessageInfo() == nil {
370
+ ms.StoreMessageInfo(mi)
371
+ }
372
+ return ms
373
+ }
374
+ return mi.MessageOf(x)
375
+ }
376
+
377
+ // Deprecated: Use FetchUserInfoRequest.ProtoReflect.Descriptor instead.
378
+ func (*FetchUserInfoRequest) Descriptor() ([]byte, []int) {
379
+ return file_fbcrawl_proto_rawDescGZIP(), []int{6}
380
+ }
381
+
382
+ func (x *FetchUserInfoRequest) GetPointer() *Pointer {
383
+ if x != nil {
384
+ return x.Pointer
385
+ }
386
+ return nil
387
+ }
388
+
389
+ func (x *FetchUserInfoRequest) GetUsername() string {
390
+ if x != nil {
391
+ return x.Username
392
+ }
393
+ return ""
394
+ }
395
+
341
396
  type FetchGroupFeedRequest struct {
342
397
  state protoimpl.MessageState
343
398
  sizeCache protoimpl.SizeCache
@@ -351,7 +406,7 @@ type FetchGroupFeedRequest struct {
351
406
  func (x *FetchGroupFeedRequest) Reset() {
352
407
  *x = FetchGroupFeedRequest{}
353
408
  if protoimpl.UnsafeEnabled {
354
- mi := &file_fbcrawl_proto_msgTypes[6]
409
+ mi := &file_fbcrawl_proto_msgTypes[7]
355
410
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
356
411
  ms.StoreMessageInfo(mi)
357
412
  }
@@ -364,7 +419,7 @@ func (x *FetchGroupFeedRequest) String() string {
364
419
  func (*FetchGroupFeedRequest) ProtoMessage() {}
365
420
 
366
421
  func (x *FetchGroupFeedRequest) ProtoReflect() protoreflect.Message {
367
- mi := &file_fbcrawl_proto_msgTypes[6]
422
+ mi := &file_fbcrawl_proto_msgTypes[7]
368
423
  if protoimpl.UnsafeEnabled && x != nil {
369
424
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
370
425
  if ms.LoadMessageInfo() == nil {
@@ -377,7 +432,7 @@ func (x *FetchGroupFeedRequest) ProtoReflect() protoreflect.Message {
377
432
 
378
433
  // Deprecated: Use FetchGroupFeedRequest.ProtoReflect.Descriptor instead.
379
434
  func (*FetchGroupFeedRequest) Descriptor() ([]byte, []int) {
380
- return file_fbcrawl_proto_rawDescGZIP(), []int{6}
435
+ return file_fbcrawl_proto_rawDescGZIP(), []int{7}
381
436
  }
382
437
 
383
438
  func (x *FetchGroupFeedRequest) GetPointer() *Pointer {
@@ -415,7 +470,7 @@ type FetchPostRequest struct {
415
470
  func (x *FetchPostRequest) Reset() {
416
471
  *x = FetchPostRequest{}
417
472
  if protoimpl.UnsafeEnabled {
418
- mi := &file_fbcrawl_proto_msgTypes[7]
473
+ mi := &file_fbcrawl_proto_msgTypes[8]
419
474
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
420
475
  ms.StoreMessageInfo(mi)
421
476
  }
@@ -428,7 +483,7 @@ func (x *FetchPostRequest) String() string {
428
483
  func (*FetchPostRequest) ProtoMessage() {}
429
484
 
430
485
  func (x *FetchPostRequest) ProtoReflect() protoreflect.Message {
431
- mi := &file_fbcrawl_proto_msgTypes[7]
486
+ mi := &file_fbcrawl_proto_msgTypes[8]
432
487
  if protoimpl.UnsafeEnabled && x != nil {
433
488
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
434
489
  if ms.LoadMessageInfo() == nil {
@@ -441,7 +496,7 @@ func (x *FetchPostRequest) ProtoReflect() protoreflect.Message {
441
496
 
442
497
  // Deprecated: Use FetchPostRequest.ProtoReflect.Descriptor instead.
443
498
  func (*FetchPostRequest) Descriptor() ([]byte, []int) {
444
- return file_fbcrawl_proto_rawDescGZIP(), []int{7}
499
+ return file_fbcrawl_proto_rawDescGZIP(), []int{8}
445
500
  }
446
501
 
447
502
  func (x *FetchPostRequest) GetPointer() *Pointer {
@@ -485,7 +540,7 @@ type FetchContentImagesRequest struct {
485
540
  func (x *FetchContentImagesRequest) Reset() {
486
541
  *x = FetchContentImagesRequest{}
487
542
  if protoimpl.UnsafeEnabled {
488
- mi := &file_fbcrawl_proto_msgTypes[8]
543
+ mi := &file_fbcrawl_proto_msgTypes[9]
489
544
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
490
545
  ms.StoreMessageInfo(mi)
491
546
  }
@@ -498,7 +553,7 @@ func (x *FetchContentImagesRequest) String() string {
498
553
  func (*FetchContentImagesRequest) ProtoMessage() {}
499
554
 
500
555
  func (x *FetchContentImagesRequest) ProtoReflect() protoreflect.Message {
501
- mi := &file_fbcrawl_proto_msgTypes[8]
556
+ mi := &file_fbcrawl_proto_msgTypes[9]
502
557
  if protoimpl.UnsafeEnabled && x != nil {
503
558
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
504
559
  if ms.LoadMessageInfo() == nil {
@@ -511,7 +566,7 @@ func (x *FetchContentImagesRequest) ProtoReflect() protoreflect.Message {
511
566
 
512
567
  // Deprecated: Use FetchContentImagesRequest.ProtoReflect.Descriptor instead.
513
568
  func (*FetchContentImagesRequest) Descriptor() ([]byte, []int) {
514
- return file_fbcrawl_proto_rawDescGZIP(), []int{8}
569
+ return file_fbcrawl_proto_rawDescGZIP(), []int{9}
515
570
  }
516
571
 
517
572
  func (x *FetchContentImagesRequest) GetPointer() *Pointer {
@@ -547,7 +602,7 @@ type FetchImageUrlRequest struct {
547
602
  func (x *FetchImageUrlRequest) Reset() {
548
603
  *x = FetchImageUrlRequest{}
549
604
  if protoimpl.UnsafeEnabled {
550
- mi := &file_fbcrawl_proto_msgTypes[9]
605
+ mi := &file_fbcrawl_proto_msgTypes[10]
551
606
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
552
607
  ms.StoreMessageInfo(mi)
553
608
  }
@@ -560,7 +615,7 @@ func (x *FetchImageUrlRequest) String() string {
560
615
  func (*FetchImageUrlRequest) ProtoMessage() {}
561
616
 
562
617
  func (x *FetchImageUrlRequest) ProtoReflect() protoreflect.Message {
563
- mi := &file_fbcrawl_proto_msgTypes[9]
618
+ mi := &file_fbcrawl_proto_msgTypes[10]
564
619
  if protoimpl.UnsafeEnabled && x != nil {
565
620
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
566
621
  if ms.LoadMessageInfo() == nil {
@@ -573,7 +628,7 @@ func (x *FetchImageUrlRequest) ProtoReflect() protoreflect.Message {
573
628
 
574
629
  // Deprecated: Use FetchImageUrlRequest.ProtoReflect.Descriptor instead.
575
630
  func (*FetchImageUrlRequest) Descriptor() ([]byte, []int) {
576
- return file_fbcrawl_proto_rawDescGZIP(), []int{9}
631
+ return file_fbcrawl_proto_rawDescGZIP(), []int{10}
577
632
  }
578
633
 
579
634
  func (x *FetchImageUrlRequest) GetPointer() *Pointer {
@@ -604,7 +659,7 @@ type FacebookGroup struct {
604
659
  func (x *FacebookGroup) Reset() {
605
660
  *x = FacebookGroup{}
606
661
  if protoimpl.UnsafeEnabled {
607
- mi := &file_fbcrawl_proto_msgTypes[10]
662
+ mi := &file_fbcrawl_proto_msgTypes[11]
608
663
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
609
664
  ms.StoreMessageInfo(mi)
610
665
  }
@@ -617,7 +672,7 @@ func (x *FacebookGroup) String() string {
617
672
  func (*FacebookGroup) ProtoMessage() {}
618
673
 
619
674
  func (x *FacebookGroup) ProtoReflect() protoreflect.Message {
620
- mi := &file_fbcrawl_proto_msgTypes[10]
675
+ mi := &file_fbcrawl_proto_msgTypes[11]
621
676
  if protoimpl.UnsafeEnabled && x != nil {
622
677
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
623
678
  if ms.LoadMessageInfo() == nil {
@@ -630,7 +685,7 @@ func (x *FacebookGroup) ProtoReflect() protoreflect.Message {
630
685
 
631
686
  // Deprecated: Use FacebookGroup.ProtoReflect.Descriptor instead.
632
687
  func (*FacebookGroup) Descriptor() ([]byte, []int) {
633
- return file_fbcrawl_proto_rawDescGZIP(), []int{10}
688
+ return file_fbcrawl_proto_rawDescGZIP(), []int{11}
634
689
  }
635
690
 
636
691
  func (x *FacebookGroup) GetId() int64 {
@@ -659,14 +714,16 @@ type FacebookUser struct {
659
714
  sizeCache protoimpl.SizeCache
660
715
  unknownFields protoimpl.UnknownFields
661
716
 
662
- Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
663
- Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
717
+ Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
718
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
719
+ Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"`
720
+ FriendCount int64 `protobuf:"varint,4,opt,name=friend_count,json=friendCount,proto3" json:"friend_count,omitempty"`
664
721
  }
665
722
 
666
723
  func (x *FacebookUser) Reset() {
667
724
  *x = FacebookUser{}
668
725
  if protoimpl.UnsafeEnabled {
669
- mi := &file_fbcrawl_proto_msgTypes[11]
726
+ mi := &file_fbcrawl_proto_msgTypes[12]
670
727
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
671
728
  ms.StoreMessageInfo(mi)
672
729
  }
@@ -679,7 +736,7 @@ func (x *FacebookUser) String() string {
679
736
  func (*FacebookUser) ProtoMessage() {}
680
737
 
681
738
  func (x *FacebookUser) ProtoReflect() protoreflect.Message {
682
- mi := &file_fbcrawl_proto_msgTypes[11]
739
+ mi := &file_fbcrawl_proto_msgTypes[12]
683
740
  if protoimpl.UnsafeEnabled && x != nil {
684
741
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
685
742
  if ms.LoadMessageInfo() == nil {
@@ -692,7 +749,7 @@ func (x *FacebookUser) ProtoReflect() protoreflect.Message {
692
749
 
693
750
  // Deprecated: Use FacebookUser.ProtoReflect.Descriptor instead.
694
751
  func (*FacebookUser) Descriptor() ([]byte, []int) {
695
- return file_fbcrawl_proto_rawDescGZIP(), []int{11}
752
+ return file_fbcrawl_proto_rawDescGZIP(), []int{12}
696
753
  }
697
754
 
698
755
  func (x *FacebookUser) GetId() int64 {
@@ -709,6 +766,20 @@ func (x *FacebookUser) GetName() string {
709
766
  return ""
710
767
  }
711
768
 
769
+ func (x *FacebookUser) GetUsername() string {
770
+ if x != nil {
771
+ return x.Username
772
+ }
773
+ return ""
774
+ }
775
+
776
+ func (x *FacebookUser) GetFriendCount() int64 {
777
+ if x != nil {
778
+ return x.FriendCount
779
+ }
780
+ return 0
781
+ }
782
+
712
783
  type FacebookPost struct {
713
784
  state protoimpl.MessageState
714
785
  sizeCache protoimpl.SizeCache
@@ -730,7 +801,7 @@ type FacebookPost struct {
730
801
  func (x *FacebookPost) Reset() {
731
802
  *x = FacebookPost{}
732
803
  if protoimpl.UnsafeEnabled {
733
- mi := &file_fbcrawl_proto_msgTypes[12]
804
+ mi := &file_fbcrawl_proto_msgTypes[13]
734
805
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
735
806
  ms.StoreMessageInfo(mi)
736
807
  }
@@ -743,7 +814,7 @@ func (x *FacebookPost) String() string {
743
814
  func (*FacebookPost) ProtoMessage() {}
744
815
 
745
816
  func (x *FacebookPost) ProtoReflect() protoreflect.Message {
746
- mi := &file_fbcrawl_proto_msgTypes[12]
817
+ mi := &file_fbcrawl_proto_msgTypes[13]
747
818
  if protoimpl.UnsafeEnabled && x != nil {
748
819
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
749
820
  if ms.LoadMessageInfo() == nil {
@@ -756,7 +827,7 @@ func (x *FacebookPost) ProtoReflect() protoreflect.Message {
756
827
 
757
828
  // Deprecated: Use FacebookPost.ProtoReflect.Descriptor instead.
758
829
  func (*FacebookPost) Descriptor() ([]byte, []int) {
759
- return file_fbcrawl_proto_rawDescGZIP(), []int{12}
830
+ return file_fbcrawl_proto_rawDescGZIP(), []int{13}
760
831
  }
761
832
 
762
833
  func (x *FacebookPost) GetId() int64 {
@@ -848,7 +919,7 @@ type CommentList struct {
848
919
  func (x *CommentList) Reset() {
849
920
  *x = CommentList{}
850
921
  if protoimpl.UnsafeEnabled {
851
- mi := &file_fbcrawl_proto_msgTypes[13]
922
+ mi := &file_fbcrawl_proto_msgTypes[14]
852
923
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
853
924
  ms.StoreMessageInfo(mi)
854
925
  }
@@ -861,7 +932,7 @@ func (x *CommentList) String() string {
861
932
  func (*CommentList) ProtoMessage() {}
862
933
 
863
934
  func (x *CommentList) ProtoReflect() protoreflect.Message {
864
- mi := &file_fbcrawl_proto_msgTypes[13]
935
+ mi := &file_fbcrawl_proto_msgTypes[14]
865
936
  if protoimpl.UnsafeEnabled && x != nil {
866
937
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
867
938
  if ms.LoadMessageInfo() == nil {
@@ -874,7 +945,7 @@ func (x *CommentList) ProtoReflect() protoreflect.Message {
874
945
 
875
946
  // Deprecated: Use CommentList.ProtoReflect.Descriptor instead.
876
947
  func (*CommentList) Descriptor() ([]byte, []int) {
877
- return file_fbcrawl_proto_rawDescGZIP(), []int{13}
948
+ return file_fbcrawl_proto_rawDescGZIP(), []int{14}
878
949
  }
879
950
 
880
951
  func (x *CommentList) GetComments() []*FacebookComment {
@@ -903,7 +974,7 @@ type FacebookImage struct {
903
974
  func (x *FacebookImage) Reset() {
904
975
  *x = FacebookImage{}
905
976
  if protoimpl.UnsafeEnabled {
906
- mi := &file_fbcrawl_proto_msgTypes[14]
977
+ mi := &file_fbcrawl_proto_msgTypes[15]
907
978
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
908
979
  ms.StoreMessageInfo(mi)
909
980
  }
@@ -916,7 +987,7 @@ func (x *FacebookImage) String() string {
916
987
  func (*FacebookImage) ProtoMessage() {}
917
988
 
918
989
  func (x *FacebookImage) ProtoReflect() protoreflect.Message {
919
- mi := &file_fbcrawl_proto_msgTypes[14]
990
+ mi := &file_fbcrawl_proto_msgTypes[15]
920
991
  if protoimpl.UnsafeEnabled && x != nil {
921
992
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
922
993
  if ms.LoadMessageInfo() == nil {
@@ -929,7 +1000,7 @@ func (x *FacebookImage) ProtoReflect() protoreflect.Message {
929
1000
 
930
1001
  // Deprecated: Use FacebookImage.ProtoReflect.Descriptor instead.
931
1002
  func (*FacebookImage) Descriptor() ([]byte, []int) {
932
- return file_fbcrawl_proto_rawDescGZIP(), []int{14}
1003
+ return file_fbcrawl_proto_rawDescGZIP(), []int{15}
933
1004
  }
934
1005
 
935
1006
  func (x *FacebookImage) GetId() int64 {
@@ -961,7 +1032,7 @@ type FacebookComment struct {
961
1032
  func (x *FacebookComment) Reset() {
962
1033
  *x = FacebookComment{}
963
1034
  if protoimpl.UnsafeEnabled {
964
- mi := &file_fbcrawl_proto_msgTypes[15]
1035
+ mi := &file_fbcrawl_proto_msgTypes[16]
965
1036
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
966
1037
  ms.StoreMessageInfo(mi)
967
1038
  }
@@ -974,7 +1045,7 @@ func (x *FacebookComment) String() string {
974
1045
  func (*FacebookComment) ProtoMessage() {}
975
1046
 
976
1047
  func (x *FacebookComment) ProtoReflect() protoreflect.Message {
977
- mi := &file_fbcrawl_proto_msgTypes[15]
1048
+ mi := &file_fbcrawl_proto_msgTypes[16]
978
1049
  if protoimpl.UnsafeEnabled && x != nil {
979
1050
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
980
1051
  if ms.LoadMessageInfo() == nil {
@@ -987,7 +1058,7 @@ func (x *FacebookComment) ProtoReflect() protoreflect.Message {
987
1058
 
988
1059
  // Deprecated: Use FacebookComment.ProtoReflect.Descriptor instead.
989
1060
  func (*FacebookComment) Descriptor() ([]byte, []int) {
990
- return file_fbcrawl_proto_rawDescGZIP(), []int{15}
1061
+ return file_fbcrawl_proto_rawDescGZIP(), []int{16}
991
1062
  }
992
1063
 
993
1064
  func (x *FacebookComment) GetId() int64 {
@@ -1037,7 +1108,7 @@ type FacebookPostList struct {
1037
1108
  func (x *FacebookPostList) Reset() {
1038
1109
  *x = FacebookPostList{}
1039
1110
  if protoimpl.UnsafeEnabled {
1040
- mi := &file_fbcrawl_proto_msgTypes[16]
1111
+ mi := &file_fbcrawl_proto_msgTypes[17]
1041
1112
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1042
1113
  ms.StoreMessageInfo(mi)
1043
1114
  }
@@ -1050,7 +1121,7 @@ func (x *FacebookPostList) String() string {
1050
1121
  func (*FacebookPostList) ProtoMessage() {}
1051
1122
 
1052
1123
  func (x *FacebookPostList) ProtoReflect() protoreflect.Message {
1053
- mi := &file_fbcrawl_proto_msgTypes[16]
1124
+ mi := &file_fbcrawl_proto_msgTypes[17]
1054
1125
  if protoimpl.UnsafeEnabled && x != nil {
1055
1126
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1056
1127
  if ms.LoadMessageInfo() == nil {
@@ -1063,7 +1134,7 @@ func (x *FacebookPostList) ProtoReflect() protoreflect.Message {
1063
1134
 
1064
1135
  // Deprecated: Use FacebookPostList.ProtoReflect.Descriptor instead.
1065
1136
  func (*FacebookPostList) Descriptor() ([]byte, []int) {
1066
- return file_fbcrawl_proto_rawDescGZIP(), []int{16}
1137
+ return file_fbcrawl_proto_rawDescGZIP(), []int{17}
1067
1138
  }
1068
1139
 
1069
1140
  func (x *FacebookPostList) GetPosts() []*FacebookPost {
@@ -1092,7 +1163,7 @@ type FacebookImageList struct {
1092
1163
  func (x *FacebookImageList) Reset() {
1093
1164
  *x = FacebookImageList{}
1094
1165
  if protoimpl.UnsafeEnabled {
1095
- mi := &file_fbcrawl_proto_msgTypes[17]
1166
+ mi := &file_fbcrawl_proto_msgTypes[18]
1096
1167
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1097
1168
  ms.StoreMessageInfo(mi)
1098
1169
  }
@@ -1105,7 +1176,7 @@ func (x *FacebookImageList) String() string {
1105
1176
  func (*FacebookImageList) ProtoMessage() {}
1106
1177
 
1107
1178
  func (x *FacebookImageList) ProtoReflect() protoreflect.Message {
1108
- mi := &file_fbcrawl_proto_msgTypes[17]
1179
+ mi := &file_fbcrawl_proto_msgTypes[18]
1109
1180
  if protoimpl.UnsafeEnabled && x != nil {
1110
1181
  ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1111
1182
  if ms.LoadMessageInfo() == nil {
@@ -1118,7 +1189,7 @@ func (x *FacebookImageList) ProtoReflect() protoreflect.Message {
1118
1189
 
1119
1190
  // Deprecated: Use FacebookImageList.ProtoReflect.Descriptor instead.
1120
1191
  func (*FacebookImageList) Descriptor() ([]byte, []int) {
1121
- return file_fbcrawl_proto_rawDescGZIP(), []int{17}
1192
+ return file_fbcrawl_proto_rawDescGZIP(), []int{18}
1122
1193
  }
1123
1194
 
1124
1195
  func (x *FacebookImageList) GetImages() []*FacebookImage {
@@ -1168,163 +1239,178 @@ var file_fbcrawl_proto_rawDesc = []byte{
1168
1239
  0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x12,
1169
1240
  0x25, 0x0a, 0x0e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d,
1170
1241
  0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x55, 0x73,
1171
- 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x85, 0x01, 0x0a, 0x15, 0x46, 0x65, 0x74, 0x63, 0x68,
1172
- 0x47, 0x72, 0x6f, 0x75, 0x70, 0x46, 0x65, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
1173
- 0x12, 0x30, 0x0a, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
1174
- 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c,
1175
- 0x79, 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74,
1176
- 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x02,
1177
- 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1f, 0x0a,
1178
- 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01,
1179
- 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0xa8,
1180
- 0x01, 0x0a, 0x10, 0x46, 0x65, 0x74, 0x63, 0x68, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75,
1181
- 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x01,
1182
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63,
1183
- 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6f,
1184
- 0x69, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69,
1185
- 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64,
1186
- 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
1187
- 0x03, 0x52, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x6d,
1188
- 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72,
1189
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4e,
1190
- 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x87, 0x01, 0x0a, 0x19, 0x46, 0x65,
1191
- 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73,
1192
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74,
1193
- 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61,
1194
- 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72,
1195
- 0x52, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x73,
1196
- 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x70, 0x6f, 0x73, 0x74,
1197
- 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f,
1198
- 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72,
1199
- 0x73, 0x6f, 0x72, 0x22, 0x63, 0x0a, 0x14, 0x46, 0x65, 0x74, 0x63, 0x68, 0x49, 0x6d, 0x61, 0x67,
1200
- 0x65, 0x55, 0x72, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x70,
1201
- 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66,
1202
- 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x50, 0x6f, 0x69,
1203
- 0x6e, 0x74, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a,
1204
- 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
1205
- 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x22, 0x56, 0x0a, 0x0d, 0x46, 0x61, 0x63, 0x65,
1206
- 0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
1207
- 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
1208
- 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a,
1209
- 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20,
1210
- 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74,
1211
- 0x22, 0x32, 0x0a, 0x0c, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72,
1212
- 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64,
1213
- 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
1214
- 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xeb, 0x03, 0x0a, 0x0c, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f,
1215
- 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
1216
- 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02,
1217
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63,
1218
- 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72, 0x6f,
1219
- 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2f, 0x0a, 0x04, 0x75, 0x73, 0x65,
1220
- 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77,
1221
- 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b,
1222
- 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f,
1223
- 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e,
1224
- 0x74, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73,
1225
- 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c,
1226
- 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69,
1227
- 0x73, 0x74, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0c,
1228
- 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x06, 0x20, 0x01,
1229
- 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x6e, 0x6b, 0x12,
1230
- 0x43, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65,
1231
- 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77,
1232
- 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b,
1233
- 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d,
1234
- 0x61, 0x67, 0x65, 0x73, 0x12, 0x41, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f,
1235
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x62,
1236
- 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65,
1237
- 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65,
1238
- 0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
1239
- 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65,
1240
- 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69,
1241
- 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d,
1242
- 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a,
1243
- 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b,
1244
- 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75,
1245
- 0x6e, 0x74, 0x22, 0x6a, 0x0a, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73,
1246
- 0x74, 0x12, 0x3a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20,
1247
- 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
1248
- 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d,
1249
- 0x65, 0x6e, 0x74, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x0a,
1250
- 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x0c, 0x20, 0x01,
1251
- 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x31,
1252
- 0x0a, 0x0d, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12,
1242
+ 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x64, 0x0a, 0x14, 0x46, 0x65, 0x74, 0x63, 0x68, 0x55,
1243
+ 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30,
1244
+ 0x0a, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
1245
+ 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
1246
+ 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72,
1247
+ 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
1248
+ 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x85, 0x01, 0x0a,
1249
+ 0x15, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x46, 0x65, 0x65, 0x64, 0x52,
1250
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65,
1251
+ 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77,
1252
+ 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x52,
1253
+ 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75,
1254
+ 0x70, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75,
1255
+ 0x70, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73,
1256
+ 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75,
1257
+ 0x72, 0x73, 0x6f, 0x72, 0x22, 0xa8, 0x01, 0x0a, 0x10, 0x46, 0x65, 0x74, 0x63, 0x68, 0x50, 0x6f,
1258
+ 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x07, 0x70, 0x6f, 0x69,
1259
+ 0x6e, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63,
1260
+ 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74,
1261
+ 0x65, 0x72, 0x52, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x67,
1262
+ 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67,
1263
+ 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x69,
1264
+ 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12,
1265
+ 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x5f,
1266
+ 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6f,
1267
+ 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22,
1268
+ 0x87, 0x01, 0x0a, 0x19, 0x46, 0x65, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
1269
+ 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a,
1270
+ 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16,
1271
+ 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x50,
1272
+ 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x12,
1273
+ 0x17, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03,
1274
+ 0x52, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74,
1275
+ 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e,
1276
+ 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x63, 0x0a, 0x14, 0x46, 0x65, 0x74,
1277
+ 0x63, 0x68, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
1278
+ 0x74, 0x12, 0x30, 0x0a, 0x07, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01,
1279
+ 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c,
1280
+ 0x6c, 0x79, 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x07, 0x70, 0x6f, 0x69, 0x6e,
1281
+ 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18,
1282
+ 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x22, 0x56,
1283
+ 0x0a, 0x0d, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12,
1253
1284
  0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12,
1254
- 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72,
1255
- 0x6c, 0x22, 0xbc, 0x01, 0x0a, 0x0f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f,
1256
- 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
1257
- 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2f, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20,
1258
- 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
1259
- 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74,
1260
- 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x03,
1261
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63,
1262
- 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65,
1263
- 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65,
1264
- 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
1265
- 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18,
1266
- 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74,
1267
- 0x22, 0x66, 0x0a, 0x10, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74,
1268
- 0x4c, 0x69, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20,
1269
- 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
1270
- 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74,
1271
- 0x52, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f,
1272
- 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65,
1273
- 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x6a, 0x0a, 0x11, 0x46, 0x61, 0x63, 0x65,
1274
- 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x34, 0x0a,
1275
- 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
1276
- 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61,
1277
- 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x06, 0x69, 0x6d, 0x61,
1278
- 0x67, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73,
1279
- 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75,
1280
- 0x72, 0x73, 0x6f, 0x72, 0x32, 0xcf, 0x05, 0x0a, 0x04, 0x47, 0x72, 0x70, 0x63, 0x12, 0x36, 0x0a,
1281
- 0x04, 0x49, 0x6e, 0x69, 0x74, 0x12, 0x14, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f,
1282
- 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x66, 0x62,
1283
- 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x50, 0x6f, 0x69, 0x6e,
1284
- 0x74, 0x65, 0x72, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x09, 0x46, 0x72, 0x65, 0x65, 0x43, 0x6f, 0x6c,
1285
- 0x6c, 0x79, 0x12, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c,
1286
- 0x6c, 0x79, 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x1a, 0x14, 0x2e, 0x66, 0x62, 0x63,
1287
- 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
1288
- 0x22, 0x00, 0x12, 0x44, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x1b, 0x2e, 0x66, 0x62,
1289
- 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x4c, 0x6f, 0x67, 0x69,
1290
- 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61,
1291
- 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65,
1292
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x10, 0x4c, 0x6f, 0x67, 0x69,
1293
- 0x6e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x73, 0x12, 0x26, 0x2e, 0x66,
1294
- 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x4c, 0x6f, 0x67,
1295
- 0x69, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71,
1296
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63,
1297
- 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x0e,
1298
- 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24,
1299
- 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46,
1300
- 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71,
1301
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63,
1302
- 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x47, 0x72, 0x6f,
1303
- 0x75, 0x70, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x0e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f,
1304
- 0x75, 0x70, 0x46, 0x65, 0x65, 0x64, 0x12, 0x24, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c,
1305
- 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75,
1306
- 0x70, 0x46, 0x65, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x66,
1285
+ 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
1286
+ 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f,
1287
+ 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65,
1288
+ 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x71, 0x0a, 0x0c, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f,
1289
+ 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
1290
+ 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
1291
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73,
1292
+ 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73,
1293
+ 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64,
1294
+ 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x66, 0x72,
1295
+ 0x69, 0x65, 0x6e, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xeb, 0x03, 0x0a, 0x0c, 0x46, 0x61,
1296
+ 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
1297
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72,
1298
+ 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72,
1299
+ 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f,
1300
+ 0x6f, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2f,
1301
+ 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66,
1307
1302
  0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63,
1308
- 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00, 0x12,
1309
- 0x4b, 0x0a, 0x09, 0x46, 0x65, 0x74, 0x63, 0x68, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x1f, 0x2e, 0x66,
1310
- 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74,
1311
- 0x63, 0x68, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e,
1312
- 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61,
1313
- 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x22, 0x00, 0x12, 0x62, 0x0a, 0x12,
1314
- 0x46, 0x65, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67,
1315
- 0x65, 0x73, 0x12, 0x28, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c,
1316
- 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49,
1317
- 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x66,
1303
+ 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12,
1304
+ 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
1305
+ 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x63, 0x6f, 0x6d,
1306
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x66, 0x62,
1307
+ 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x43, 0x6f, 0x6d, 0x6d,
1308
+ 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74,
1309
+ 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6e,
1310
+ 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
1311
+ 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x43, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f,
1312
+ 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66,
1318
1313
  0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63,
1319
- 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00,
1320
- 0x12, 0x54, 0x0a, 0x0d, 0x46, 0x65, 0x74, 0x63, 0x68, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72,
1321
- 0x6c, 0x12, 0x23, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c,
1322
- 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x52,
1323
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c,
1314
+ 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74,
1315
+ 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x41, 0x0a, 0x0d, 0x63, 0x6f, 0x6e,
1316
+ 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b,
1317
+ 0x32, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79,
1318
+ 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x0c,
1319
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a,
1320
+ 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03,
1321
+ 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x72,
1322
+ 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20,
1323
+ 0x01, 0x28, 0x03, 0x52, 0x0d, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75,
1324
+ 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f,
1325
+ 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65,
1326
+ 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x6a, 0x0a, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x65,
1327
+ 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e,
1328
+ 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61,
1329
+ 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f,
1330
+ 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e,
1331
+ 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f,
1332
+ 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72,
1333
+ 0x73, 0x6f, 0x72, 0x22, 0x31, 0x0a, 0x0d, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49,
1334
+ 0x6d, 0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
1335
+ 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
1336
+ 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0xbc, 0x01, 0x0a, 0x0f, 0x46, 0x61, 0x63, 0x65, 0x62,
1337
+ 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
1338
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2f, 0x0a, 0x04, 0x70, 0x6f,
1339
+ 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61,
1340
+ 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f,
1341
+ 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x75,
1342
+ 0x73, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72,
1343
+ 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f,
1344
+ 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07,
1345
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63,
1346
+ 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
1347
+ 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61,
1348
+ 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x66, 0x0a, 0x10, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f,
1349
+ 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x05, 0x70, 0x6f, 0x73,
1350
+ 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61,
1351
+ 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f,
1352
+ 0x6b, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b,
1353
+ 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
1354
+ 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x6a, 0x0a,
1355
+ 0x11, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4c, 0x69,
1356
+ 0x73, 0x74, 0x12, 0x34, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03,
1357
+ 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c,
1358
+ 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65,
1359
+ 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74,
1360
+ 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e,
1361
+ 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x32, 0xa4, 0x06, 0x0a, 0x04, 0x47, 0x72,
1362
+ 0x70, 0x63, 0x12, 0x36, 0x0a, 0x04, 0x49, 0x6e, 0x69, 0x74, 0x12, 0x14, 0x2e, 0x66, 0x62, 0x63,
1363
+ 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
1364
+ 0x1a, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79,
1365
+ 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x09, 0x46, 0x72,
1366
+ 0x65, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x79, 0x12, 0x16, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77,
1367
+ 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x1a,
1368
+ 0x14, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
1369
+ 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
1370
+ 0x12, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79,
1371
+ 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e,
1372
+ 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x4c, 0x6f,
1373
+ 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a,
1374
+ 0x10, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6f, 0x6f, 0x6b, 0x69, 0x65,
1375
+ 0x73, 0x12, 0x26, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c,
1376
+ 0x79, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x43, 0x6f, 0x6f, 0x6b, 0x69,
1377
+ 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x66, 0x62, 0x63, 0x72,
1378
+ 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22,
1379
+ 0x00, 0x12, 0x56, 0x0a, 0x0e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49,
1380
+ 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f,
1381
+ 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e,
1382
+ 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72,
1383
+ 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f,
1384
+ 0x6f, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x00, 0x12, 0x53, 0x0a, 0x0d, 0x46, 0x65, 0x74,
1385
+ 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x2e, 0x66, 0x62, 0x63,
1386
+ 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68,
1387
+ 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
1388
+ 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e,
1389
+ 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x22, 0x00, 0x12, 0x59,
1390
+ 0x0a, 0x0e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x46, 0x65, 0x65, 0x64,
1391
+ 0x12, 0x24, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79,
1392
+ 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x46, 0x65, 0x65, 0x64, 0x52,
1393
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c,
1394
+ 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50,
1395
+ 0x6f, 0x73, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x09, 0x46, 0x65, 0x74,
1396
+ 0x63, 0x68, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x1f, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c,
1397
+ 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63, 0x68, 0x50, 0x6f, 0x73, 0x74,
1398
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77,
1399
+ 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b,
1400
+ 0x50, 0x6f, 0x73, 0x74, 0x22, 0x00, 0x12, 0x62, 0x0a, 0x12, 0x46, 0x65, 0x74, 0x63, 0x68, 0x43,
1401
+ 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x28, 0x2e, 0x66,
1402
+ 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74,
1403
+ 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x52,
1404
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c,
1324
1405
  0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49,
1325
- 0x6d, 0x61, 0x67, 0x65, 0x22, 0x00, 0x42, 0x11, 0x5a, 0x0f, 0x2e, 0x2f, 0x66, 0x62, 0x63, 0x72,
1326
- 0x61, 0x77, 0x6c, 0x2f, 0x70, 0x62, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1327
- 0x33,
1406
+ 0x6d, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x0d, 0x46, 0x65,
1407
+ 0x74, 0x63, 0x68, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x23, 0x2e, 0x66, 0x62,
1408
+ 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79, 0x2e, 0x46, 0x65, 0x74, 0x63,
1409
+ 0x68, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
1410
+ 0x1a, 0x1c, 0x2e, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x79,
1411
+ 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x00,
1412
+ 0x42, 0x11, 0x5a, 0x0f, 0x2e, 0x2f, 0x66, 0x62, 0x63, 0x72, 0x61, 0x77, 0x6c, 0x2f, 0x70, 0x62,
1413
+ 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
1328
1414
  }
1329
1415
 
1330
1416
  var (
@@ -1339,7 +1425,7 @@ func file_fbcrawl_proto_rawDescGZIP() []byte {
1339
1425
  return file_fbcrawl_proto_rawDescData
1340
1426
  }
1341
1427
 
1342
- var file_fbcrawl_proto_msgTypes = make([]protoimpl.MessageInfo, 18)
1428
+ var file_fbcrawl_proto_msgTypes = make([]protoimpl.MessageInfo, 19)
1343
1429
  var file_fbcrawl_proto_goTypes = []interface{}{
1344
1430
  (*Empty)(nil), // 0: fbcrawl_colly.Empty
1345
1431
  (*Pointer)(nil), // 1: fbcrawl_colly.Pointer
@@ -1347,60 +1433,64 @@ var file_fbcrawl_proto_goTypes = []interface{}{
1347
1433
  (*LoginResponse)(nil), // 3: fbcrawl_colly.LoginResponse
1348
1434
  (*LoginWithCookiesRequest)(nil), // 4: fbcrawl_colly.LoginWithCookiesRequest
1349
1435
  (*FetchGroupInfoRequest)(nil), // 5: fbcrawl_colly.FetchGroupInfoRequest
1350
- (*FetchGroupFeedRequest)(nil), // 6: fbcrawl_colly.FetchGroupFeedRequest
1351
- (*FetchPostRequest)(nil), // 7: fbcrawl_colly.FetchPostRequest
1352
- (*FetchContentImagesRequest)(nil), // 8: fbcrawl_colly.FetchContentImagesRequest
1353
- (*FetchImageUrlRequest)(nil), // 9: fbcrawl_colly.FetchImageUrlRequest
1354
- (*FacebookGroup)(nil), // 10: fbcrawl_colly.FacebookGroup
1355
- (*FacebookUser)(nil), // 11: fbcrawl_colly.FacebookUser
1356
- (*FacebookPost)(nil), // 12: fbcrawl_colly.FacebookPost
1357
- (*CommentList)(nil), // 13: fbcrawl_colly.CommentList
1358
- (*FacebookImage)(nil), // 14: fbcrawl_colly.FacebookImage
1359
- (*FacebookComment)(nil), // 15: fbcrawl_colly.FacebookComment
1360
- (*FacebookPostList)(nil), // 16: fbcrawl_colly.FacebookPostList
1361
- (*FacebookImageList)(nil), // 17: fbcrawl_colly.FacebookImageList
1436
+ (*FetchUserInfoRequest)(nil), // 6: fbcrawl_colly.FetchUserInfoRequest
1437
+ (*FetchGroupFeedRequest)(nil), // 7: fbcrawl_colly.FetchGroupFeedRequest
1438
+ (*FetchPostRequest)(nil), // 8: fbcrawl_colly.FetchPostRequest
1439
+ (*FetchContentImagesRequest)(nil), // 9: fbcrawl_colly.FetchContentImagesRequest
1440
+ (*FetchImageUrlRequest)(nil), // 10: fbcrawl_colly.FetchImageUrlRequest
1441
+ (*FacebookGroup)(nil), // 11: fbcrawl_colly.FacebookGroup
1442
+ (*FacebookUser)(nil), // 12: fbcrawl_colly.FacebookUser
1443
+ (*FacebookPost)(nil), // 13: fbcrawl_colly.FacebookPost
1444
+ (*CommentList)(nil), // 14: fbcrawl_colly.CommentList
1445
+ (*FacebookImage)(nil), // 15: fbcrawl_colly.FacebookImage
1446
+ (*FacebookComment)(nil), // 16: fbcrawl_colly.FacebookComment
1447
+ (*FacebookPostList)(nil), // 17: fbcrawl_colly.FacebookPostList
1448
+ (*FacebookImageList)(nil), // 18: fbcrawl_colly.FacebookImageList
1362
1449
  }
1363
1450
  var file_fbcrawl_proto_depIdxs = []int32{
1364
1451
  1, // 0: fbcrawl_colly.LoginRequest.pointer:type_name -> fbcrawl_colly.Pointer
1365
1452
  1, // 1: fbcrawl_colly.LoginWithCookiesRequest.pointer:type_name -> fbcrawl_colly.Pointer
1366
1453
  1, // 2: fbcrawl_colly.FetchGroupInfoRequest.pointer:type_name -> fbcrawl_colly.Pointer
1367
- 1, // 3: fbcrawl_colly.FetchGroupFeedRequest.pointer:type_name -> fbcrawl_colly.Pointer
1368
- 1, // 4: fbcrawl_colly.FetchPostRequest.pointer:type_name -> fbcrawl_colly.Pointer
1369
- 1, // 5: fbcrawl_colly.FetchContentImagesRequest.pointer:type_name -> fbcrawl_colly.Pointer
1370
- 1, // 6: fbcrawl_colly.FetchImageUrlRequest.pointer:type_name -> fbcrawl_colly.Pointer
1371
- 10, // 7: fbcrawl_colly.FacebookPost.group:type_name -> fbcrawl_colly.FacebookGroup
1372
- 11, // 8: fbcrawl_colly.FacebookPost.user:type_name -> fbcrawl_colly.FacebookUser
1373
- 13, // 9: fbcrawl_colly.FacebookPost.comments:type_name -> fbcrawl_colly.CommentList
1374
- 14, // 10: fbcrawl_colly.FacebookPost.content_images:type_name -> fbcrawl_colly.FacebookImage
1375
- 14, // 11: fbcrawl_colly.FacebookPost.content_image:type_name -> fbcrawl_colly.FacebookImage
1376
- 15, // 12: fbcrawl_colly.CommentList.comments:type_name -> fbcrawl_colly.FacebookComment
1377
- 12, // 13: fbcrawl_colly.FacebookComment.post:type_name -> fbcrawl_colly.FacebookPost
1378
- 11, // 14: fbcrawl_colly.FacebookComment.user:type_name -> fbcrawl_colly.FacebookUser
1379
- 12, // 15: fbcrawl_colly.FacebookPostList.posts:type_name -> fbcrawl_colly.FacebookPost
1380
- 14, // 16: fbcrawl_colly.FacebookImageList.images:type_name -> fbcrawl_colly.FacebookImage
1381
- 0, // 17: fbcrawl_colly.Grpc.Init:input_type -> fbcrawl_colly.Empty
1382
- 1, // 18: fbcrawl_colly.Grpc.FreeColly:input_type -> fbcrawl_colly.Pointer
1383
- 2, // 19: fbcrawl_colly.Grpc.Login:input_type -> fbcrawl_colly.LoginRequest
1384
- 4, // 20: fbcrawl_colly.Grpc.LoginWithCookies:input_type -> fbcrawl_colly.LoginWithCookiesRequest
1385
- 5, // 21: fbcrawl_colly.Grpc.FetchGroupInfo:input_type -> fbcrawl_colly.FetchGroupInfoRequest
1386
- 6, // 22: fbcrawl_colly.Grpc.FetchGroupFeed:input_type -> fbcrawl_colly.FetchGroupFeedRequest
1387
- 7, // 23: fbcrawl_colly.Grpc.FetchPost:input_type -> fbcrawl_colly.FetchPostRequest
1388
- 8, // 24: fbcrawl_colly.Grpc.FetchContentImages:input_type -> fbcrawl_colly.FetchContentImagesRequest
1389
- 9, // 25: fbcrawl_colly.Grpc.FetchImageUrl:input_type -> fbcrawl_colly.FetchImageUrlRequest
1390
- 1, // 26: fbcrawl_colly.Grpc.Init:output_type -> fbcrawl_colly.Pointer
1391
- 0, // 27: fbcrawl_colly.Grpc.FreeColly:output_type -> fbcrawl_colly.Empty
1392
- 3, // 28: fbcrawl_colly.Grpc.Login:output_type -> fbcrawl_colly.LoginResponse
1393
- 0, // 29: fbcrawl_colly.Grpc.LoginWithCookies:output_type -> fbcrawl_colly.Empty
1394
- 10, // 30: fbcrawl_colly.Grpc.FetchGroupInfo:output_type -> fbcrawl_colly.FacebookGroup
1395
- 16, // 31: fbcrawl_colly.Grpc.FetchGroupFeed:output_type -> fbcrawl_colly.FacebookPostList
1396
- 12, // 32: fbcrawl_colly.Grpc.FetchPost:output_type -> fbcrawl_colly.FacebookPost
1397
- 17, // 33: fbcrawl_colly.Grpc.FetchContentImages:output_type -> fbcrawl_colly.FacebookImageList
1398
- 14, // 34: fbcrawl_colly.Grpc.FetchImageUrl:output_type -> fbcrawl_colly.FacebookImage
1399
- 26, // [26:35] is the sub-list for method output_type
1400
- 17, // [17:26] is the sub-list for method input_type
1401
- 17, // [17:17] is the sub-list for extension type_name
1402
- 17, // [17:17] is the sub-list for extension extendee
1403
- 0, // [0:17] is the sub-list for field type_name
1454
+ 1, // 3: fbcrawl_colly.FetchUserInfoRequest.pointer:type_name -> fbcrawl_colly.Pointer
1455
+ 1, // 4: fbcrawl_colly.FetchGroupFeedRequest.pointer:type_name -> fbcrawl_colly.Pointer
1456
+ 1, // 5: fbcrawl_colly.FetchPostRequest.pointer:type_name -> fbcrawl_colly.Pointer
1457
+ 1, // 6: fbcrawl_colly.FetchContentImagesRequest.pointer:type_name -> fbcrawl_colly.Pointer
1458
+ 1, // 7: fbcrawl_colly.FetchImageUrlRequest.pointer:type_name -> fbcrawl_colly.Pointer
1459
+ 11, // 8: fbcrawl_colly.FacebookPost.group:type_name -> fbcrawl_colly.FacebookGroup
1460
+ 12, // 9: fbcrawl_colly.FacebookPost.user:type_name -> fbcrawl_colly.FacebookUser
1461
+ 14, // 10: fbcrawl_colly.FacebookPost.comments:type_name -> fbcrawl_colly.CommentList
1462
+ 15, // 11: fbcrawl_colly.FacebookPost.content_images:type_name -> fbcrawl_colly.FacebookImage
1463
+ 15, // 12: fbcrawl_colly.FacebookPost.content_image:type_name -> fbcrawl_colly.FacebookImage
1464
+ 16, // 13: fbcrawl_colly.CommentList.comments:type_name -> fbcrawl_colly.FacebookComment
1465
+ 13, // 14: fbcrawl_colly.FacebookComment.post:type_name -> fbcrawl_colly.FacebookPost
1466
+ 12, // 15: fbcrawl_colly.FacebookComment.user:type_name -> fbcrawl_colly.FacebookUser
1467
+ 13, // 16: fbcrawl_colly.FacebookPostList.posts:type_name -> fbcrawl_colly.FacebookPost
1468
+ 15, // 17: fbcrawl_colly.FacebookImageList.images:type_name -> fbcrawl_colly.FacebookImage
1469
+ 0, // 18: fbcrawl_colly.Grpc.Init:input_type -> fbcrawl_colly.Empty
1470
+ 1, // 19: fbcrawl_colly.Grpc.FreeColly:input_type -> fbcrawl_colly.Pointer
1471
+ 2, // 20: fbcrawl_colly.Grpc.Login:input_type -> fbcrawl_colly.LoginRequest
1472
+ 4, // 21: fbcrawl_colly.Grpc.LoginWithCookies:input_type -> fbcrawl_colly.LoginWithCookiesRequest
1473
+ 5, // 22: fbcrawl_colly.Grpc.FetchGroupInfo:input_type -> fbcrawl_colly.FetchGroupInfoRequest
1474
+ 6, // 23: fbcrawl_colly.Grpc.FetchUserInfo:input_type -> fbcrawl_colly.FetchUserInfoRequest
1475
+ 7, // 24: fbcrawl_colly.Grpc.FetchGroupFeed:input_type -> fbcrawl_colly.FetchGroupFeedRequest
1476
+ 8, // 25: fbcrawl_colly.Grpc.FetchPost:input_type -> fbcrawl_colly.FetchPostRequest
1477
+ 9, // 26: fbcrawl_colly.Grpc.FetchContentImages:input_type -> fbcrawl_colly.FetchContentImagesRequest
1478
+ 10, // 27: fbcrawl_colly.Grpc.FetchImageUrl:input_type -> fbcrawl_colly.FetchImageUrlRequest
1479
+ 1, // 28: fbcrawl_colly.Grpc.Init:output_type -> fbcrawl_colly.Pointer
1480
+ 0, // 29: fbcrawl_colly.Grpc.FreeColly:output_type -> fbcrawl_colly.Empty
1481
+ 3, // 30: fbcrawl_colly.Grpc.Login:output_type -> fbcrawl_colly.LoginResponse
1482
+ 0, // 31: fbcrawl_colly.Grpc.LoginWithCookies:output_type -> fbcrawl_colly.Empty
1483
+ 11, // 32: fbcrawl_colly.Grpc.FetchGroupInfo:output_type -> fbcrawl_colly.FacebookGroup
1484
+ 12, // 33: fbcrawl_colly.Grpc.FetchUserInfo:output_type -> fbcrawl_colly.FacebookUser
1485
+ 17, // 34: fbcrawl_colly.Grpc.FetchGroupFeed:output_type -> fbcrawl_colly.FacebookPostList
1486
+ 13, // 35: fbcrawl_colly.Grpc.FetchPost:output_type -> fbcrawl_colly.FacebookPost
1487
+ 18, // 36: fbcrawl_colly.Grpc.FetchContentImages:output_type -> fbcrawl_colly.FacebookImageList
1488
+ 15, // 37: fbcrawl_colly.Grpc.FetchImageUrl:output_type -> fbcrawl_colly.FacebookImage
1489
+ 28, // [28:38] is the sub-list for method output_type
1490
+ 18, // [18:28] is the sub-list for method input_type
1491
+ 18, // [18:18] is the sub-list for extension type_name
1492
+ 18, // [18:18] is the sub-list for extension extendee
1493
+ 0, // [0:18] is the sub-list for field type_name
1404
1494
  }
1405
1495
 
1406
1496
  func init() { file_fbcrawl_proto_init() }
@@ -1482,7 +1572,7 @@ func file_fbcrawl_proto_init() {
1482
1572
  }
1483
1573
  }
1484
1574
  file_fbcrawl_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
1485
- switch v := v.(*FetchGroupFeedRequest); i {
1575
+ switch v := v.(*FetchUserInfoRequest); i {
1486
1576
  case 0:
1487
1577
  return &v.state
1488
1578
  case 1:
@@ -1494,7 +1584,7 @@ func file_fbcrawl_proto_init() {
1494
1584
  }
1495
1585
  }
1496
1586
  file_fbcrawl_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
1497
- switch v := v.(*FetchPostRequest); i {
1587
+ switch v := v.(*FetchGroupFeedRequest); i {
1498
1588
  case 0:
1499
1589
  return &v.state
1500
1590
  case 1:
@@ -1506,7 +1596,7 @@ func file_fbcrawl_proto_init() {
1506
1596
  }
1507
1597
  }
1508
1598
  file_fbcrawl_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
1509
- switch v := v.(*FetchContentImagesRequest); i {
1599
+ switch v := v.(*FetchPostRequest); i {
1510
1600
  case 0:
1511
1601
  return &v.state
1512
1602
  case 1:
@@ -1518,7 +1608,7 @@ func file_fbcrawl_proto_init() {
1518
1608
  }
1519
1609
  }
1520
1610
  file_fbcrawl_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
1521
- switch v := v.(*FetchImageUrlRequest); i {
1611
+ switch v := v.(*FetchContentImagesRequest); i {
1522
1612
  case 0:
1523
1613
  return &v.state
1524
1614
  case 1:
@@ -1530,7 +1620,7 @@ func file_fbcrawl_proto_init() {
1530
1620
  }
1531
1621
  }
1532
1622
  file_fbcrawl_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
1533
- switch v := v.(*FacebookGroup); i {
1623
+ switch v := v.(*FetchImageUrlRequest); i {
1534
1624
  case 0:
1535
1625
  return &v.state
1536
1626
  case 1:
@@ -1542,7 +1632,7 @@ func file_fbcrawl_proto_init() {
1542
1632
  }
1543
1633
  }
1544
1634
  file_fbcrawl_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
1545
- switch v := v.(*FacebookUser); i {
1635
+ switch v := v.(*FacebookGroup); i {
1546
1636
  case 0:
1547
1637
  return &v.state
1548
1638
  case 1:
@@ -1554,7 +1644,7 @@ func file_fbcrawl_proto_init() {
1554
1644
  }
1555
1645
  }
1556
1646
  file_fbcrawl_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
1557
- switch v := v.(*FacebookPost); i {
1647
+ switch v := v.(*FacebookUser); i {
1558
1648
  case 0:
1559
1649
  return &v.state
1560
1650
  case 1:
@@ -1566,7 +1656,7 @@ func file_fbcrawl_proto_init() {
1566
1656
  }
1567
1657
  }
1568
1658
  file_fbcrawl_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
1569
- switch v := v.(*CommentList); i {
1659
+ switch v := v.(*FacebookPost); i {
1570
1660
  case 0:
1571
1661
  return &v.state
1572
1662
  case 1:
@@ -1578,7 +1668,7 @@ func file_fbcrawl_proto_init() {
1578
1668
  }
1579
1669
  }
1580
1670
  file_fbcrawl_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
1581
- switch v := v.(*FacebookImage); i {
1671
+ switch v := v.(*CommentList); i {
1582
1672
  case 0:
1583
1673
  return &v.state
1584
1674
  case 1:
@@ -1590,7 +1680,7 @@ func file_fbcrawl_proto_init() {
1590
1680
  }
1591
1681
  }
1592
1682
  file_fbcrawl_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
1593
- switch v := v.(*FacebookComment); i {
1683
+ switch v := v.(*FacebookImage); i {
1594
1684
  case 0:
1595
1685
  return &v.state
1596
1686
  case 1:
@@ -1602,7 +1692,7 @@ func file_fbcrawl_proto_init() {
1602
1692
  }
1603
1693
  }
1604
1694
  file_fbcrawl_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
1605
- switch v := v.(*FacebookPostList); i {
1695
+ switch v := v.(*FacebookComment); i {
1606
1696
  case 0:
1607
1697
  return &v.state
1608
1698
  case 1:
@@ -1614,6 +1704,18 @@ func file_fbcrawl_proto_init() {
1614
1704
  }
1615
1705
  }
1616
1706
  file_fbcrawl_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
1707
+ switch v := v.(*FacebookPostList); i {
1708
+ case 0:
1709
+ return &v.state
1710
+ case 1:
1711
+ return &v.sizeCache
1712
+ case 2:
1713
+ return &v.unknownFields
1714
+ default:
1715
+ return nil
1716
+ }
1717
+ }
1718
+ file_fbcrawl_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
1617
1719
  switch v := v.(*FacebookImageList); i {
1618
1720
  case 0:
1619
1721
  return &v.state
@@ -1632,7 +1734,7 @@ func file_fbcrawl_proto_init() {
1632
1734
  GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1633
1735
  RawDescriptor: file_fbcrawl_proto_rawDesc,
1634
1736
  NumEnums: 0,
1635
- NumMessages: 18,
1737
+ NumMessages: 19,
1636
1738
  NumExtensions: 0,
1637
1739
  NumServices: 1,
1638
1740
  },