summaryrefslogblamecommitdiffstats
path: root/vendor/github.com/Rhymen/go-whatsapp/binary/proto/def.pb.go
blob: 9c4d99de2c0a100b16e7e29db064294f97dbf52e (plain) (tree)
1
2
3
4
5
6
7
8
9
10
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997



                                                



                                                








                                                                       










































                                                                                                                                     
 
                                                             
       




                                                                                                    
 
                                                                               





                               
                                                                                






                               








































                                                                                                                                                                   

                

                                                                                                   
 

                                                                                                                                                                         

                          
                                                                         
                  

                                                                                               
 
                                                 
       

                                                                     
 
                                                                   


                   
                                                                    



                   
                                                                                                

                

                                                                                    
 

                                                                                                                                           

                          
                                                          
                  

                                                                                
 
                                                
       
                                                                                   
 
                                                                  
                    
                               
 
                                                                   
                               
 
                                                                                              

                

                                                                                   
 

                                                                                                                                         

                          
                                                         
                  

                                                                               
 
                                                                     
       





                                                                                                     
 
                                                                                       






                       
                                                                                        







                       
                                                                                                                                        

                

                                                                                                        
 

                                                                                                                                                                                   

                          
                                                                              
                  

                                                                                                    
 
                                                                    
       
                                                                                                      
 
                                                                                      

                         
                                                                                       


                         
























                                                                                                                                                                                 


                                                                   

                                                          


                           

                                                           


                           




















                                                                                                                         
                                                            

















































                                                                                  

                

                                                                             
 

                                                                                                                             

                          
                                                   
                  
                                                                         
                                                            
 
                                                 
       




                                                                              
 
                                                                   





                          
                                                                    






                          
                                                                                                

                

                                                                                    
 

                                                                                                                                           

                          
                                                          
                  
                                                                                
                                                            
 
                                                   
       




































































                                                                                                                             

                                                                                                                             
 
                                                                     










































                                                  
























                                                                       

                                                 







































































                                                                       

                                                                       


                                                                                                    

                

                                                                                      
 

                                                                                                                                               

                          
                                                            
                  
                                                                                  
                                                            
 
                                                                                                            
                                                                                          


                                                
 




                                                                                        
 
                                                                       
 
                                                                                              
 
                                                                 
 
                                                               
 







                                                                      
         
                 
 
 

                                                   
                 
 

                                                                                                            



                                                



                                                                                 
 

                                                                
 
                                                                                       
 
                                                          
 
                                                        
 
                                                           
 
                                                               
 

                                                     


                 

                                             


                 




                                                                                                            
 



                                                                                  
 

                                                                 
 
                                                                                        
 
                                                           
 
                                                         
 
                                                            
 
                                                                
 

                                                      
         
                 
 

                                                      
         
                 
 
                                    
                                                                                 






                                                                                                      
 



                                                                                      
 
                                                                     
 
                                                                                            
 
                                                               
 
                                                             
 
                                                                
 

                                                                    





                                                    
                                                        
 

                                                                                                       
 















                                                                                              
         
                  
 

                                                                                          
         
                  
 

                                                                                   
         
                  
 

                                                                                    
         
                  
 





                                                                  
 
                                                                                                                            
                                                                                                          

                                                                
 




                                                                                
 

                                                               
 
                                                                                      
 
                                                         
 



                                                          
 
                                                              
 

                                                                      
         
                  
 

                                           
         
                 
 




                                                                                                                            
 



                                                                         
 

                                                        
 
                                                                               
 
                                                  
 
                                                
 
                                                   
 
                                                       
 

                                                               
         
                  
 
                                                       
                     
                            


                  




                                                                                                                            
 



                                                                          
 
                                                         
 
                                                                                
 
                                                   
 
                                                 
 
                                                    
 
                                                        
 
                                                                
                     
                                    


                  
                                                                
                     
                                    


                  
                            
                                                                                 






                                                                              
 



                                                                              
 
                                                             
 
                                                                                    
 
                                                       
 
                                                     
 
                                                        
 

                                                            





                                            
                                        
 

                                                                                               
 















                                                                             
         
                  
 

                                                                          
         
                  
 

                                                                   


                  



                                                                    
 





                                                                  
 






                                                                                                                        
 




                                                                        
 

                                                       
 
                                                                              
 






                                                  
 
                                                      
 
                                                 




                                                 
                                                  




                                                  
                                     




                                      




                                                                                          
 



                                                                     
 
                                                    
 
                                                                           
 
                                              
 
                                            
 
                                               
 






                                                   
 




                                   
 







                                                                                                               
 




                                                                                     
 













                                                                                           
 



                                                                   
         
                  
 
                                               
 
                                                                       
 



                                                                            
         
                  
 

                                                                         
         
                  
 


                                                                  
         
 




































                                                                                                                                                                                    
         
                 
 

                                                                          
         
                               
 
                                                 




                                      

                                           
         
                 
 










                                                                                                                                          
                                                                                                                         

                                                      
 



                                                                           
 

                                                          
 
                                                                                 
 
                                                    
 
                                                  
 
                                                     
 
                                                         
 

                                            


                 

                                               


                 
                                                   
                     
                                      


                  

                                             
         
                 
 
                                                  
                     
                                     


                  

                                                    


                 
                                                  
                     
                                       


                  

                                                          
         
                
 

                                                   
         
                
 






                                                  
                     
                                 


                  












                                                       














































                                                                                                                                                                           






















                                                                                                                                                        
















































































































































                                                                                  


























                                                            




                                                                                                                 

                                                    















































































































































                                                                                                                                                                                                                             
                                                                                                                                                                    









































































































                                                                                                      





                                                         












































































































































































































































































































































































































































































































































                                                                                                                                                                                                       
                                                                                                                                                           










































                                                                                     





                                                           


































































































































































































































































































































                                                                                                                                                                                                                                  
 

                                                                      
 
                                                                                             
 
                                                                
 
                                                              
 
                                                                 
 
                                                                     
 

                                                       


                 
                                                     
 
                                                                          
 
                                                                          
 
                                                                                  
 
                                                                                  
 
                                                                                        
                     
                                   


                  

                                                                               


                  

                                                                               


                  



                                                                   
         
 







                                                                                                                                          
                                                                                                                              

                                                                  
 



                                                                                       
 

                                                                      
 
                                                                                             
 
                                                                
 
                                                              
 
                                                                 
 
                                                                     
 

                                                         


                 

                                                           


                 
                                                        
                     
                               


                  

                                                          
         
                 
 

                                                          
         
                 
 
                                                                                     
                     
                                          


                  

                                                               


                 

                                                               
         
                 
 





                                                                     




                                                                                                                           
 


























                                                                                        
         
                  
 
                                                                 
                     
                                          


                  



































                                                                                                                            
                     
                                    


                  

                                                                 


                 

                                                        
         
                
 

                                                         
         
                 
 

                                                            
         
                
 



                                                                                               
 



                                                                                              
 
                                                                           
 
                                                                                                  
 
                                                                     
 
                                                                   
 
                                                                      
 
                                                                          
 
                                                             
                     
                            


                  



                                                                                               
 



                                                                                            
 

                                                                          
 
                                                                                                 
 
                                                                    
 
                                                                  
 
                                                                     
 
                                                                         
 

                                                            
         
                  
 












                                                                                                                                                                          
 



                                                                                   
 
                                                                  
 
                                                                                         
 
                                                            
 
                                                          
 
                                                             
 
                                                                 
 

                                                            
         
                
 

                                                             
         
                
 



                                                            
 



                                                       
 




                                                                             
 




                                                   
 




                                                         
 

                                                      
         
                
 
                                                         
                     
                                      


                  
                                                             




                                    









                                                                                                                              
                                                                                                                             


                                                                                                                 
 



                                                                              
 

                                                             
 
                                                                                    
 
                                                       
 



                                                        
 
                                                            
 

                                          


                 

                                                 
         
                  
 



                                                    
 



                                               
 

                                               
         
                 
 

                                             


                

                                            


                

                                                 
         
                 
 

                                                 


                

                                                       


                






                                                        
                     
                                          
         
                  
 



                                                        
 












                                                                                                       
 




                                                                               
 

                                                              
 
                                                                                     
 
                                                        
 



                                                         
 
                                                             
 

                                                                 
         
                  
 



                                                                
 



                                                          
 

                                        
 

                                                                                            
 

                                                                                                                    
 

                                                                                   
 

                                                                                   
 
                                                                                            
 













                                                                            
 




                                                                         
 




                                                                                 
 

                                                                      


                  

                                                                      


                  

                                                                         


                  






                                                                  

         

                                                                                                                                            
                                                                                                                                    








                                                                                     
 



                                                                                       
 
                                                                      
 
                                                                                             
 
                                                                
 
                                                              
 
                                                                 
 






                                                                     
 




                                                                  
 



                                                                                  
 





                                                          
                                                
 

                                                                                            
 

                                                                                      
 





















                                                                                            
                     
                              


                  








                                                                                   


                 

                                                                              


                  

                                                                              


                  

                                                                                 
         
                  
 







                                                                   
 
                             
                                                                                                                                  





                                                                               
 



                                                                               
 

                                                              
 
                                                                                     
 
                                                        
 
                                                      
 
                                                         
 
                                                             
 












                                                                          
                                         
 
                                                                                            
 
                                                                                                                    
 
                                                                     
 
                                                                             
 
                                                                
                     
                               


                  



                                                                          
 



                                                                                  
 



                                                                  
         
 
                                        





                                                                                                                                
 



                                                                                          
 

                                                                         
 
                                                                                                
 
                                                                   
 
                                                                 
 
                                                                    
 
                                                                        
 

                                                             


                 

                                                                      
         
                 
 
                                                                    
                     
                                    


                  





                                                                








                                                                                                                              
                                                                                                                    

                                                     
 



                                                                               
 

                                                              
 
                                                                                     
 
                                                        
 
                                                      
 
                                                         
 
                                                             
 

                                                           
         
                  
 

                                                 
         
                 
 

                                             
         
                 
 

                                                   
         
                 
 

                                                    


                 

                                                      


                

                                                  
         
                 
 

                                           
         
                 
 



                                                         
 





                                                    





                                                                                                                              
 




                                                                              
 

                                                             
 
                                                                                    
 
                                                       
 
                                                     
 
                                                        
 

                                                            
                     
                                


                  

                                                       
         
                 
 
                                                        
                     
                                    


                  
                                








                                                                                                                           
 



                                                                                  
 



















                                                                                        
         
                 
 

                                                     


                 

                                                          


                

                                                    
         
                 
 
                                                        
                     
                                      


                  





                                                  



























































































                                                                                                                          















                                                                                                                                                                                                                      
                                                                                                                                                                        



                                                                                                                                                                                          
                                                                                                                                                                      


                                                                                                                                                                                      







                                                                                           
                                                         
 
 




                                                                             
                                                
























































































































                                                                                                 





                                                                 





                                                                     
                                                                                   
                     













                                                                                 









                                                       












                                                                               



                                                       
 
                                                             
                     






                                                             
                  
 







                                                                                                            
 



                                                                          
                                                         
 

                                                         
 
                                                                                
 






                                                    
 
                                                        
 

                                            


                 













                                              




                                             
                         































                                                                                                                                                                                                                       




                                                                           
                                                         





















                                                                                 
         
                                      
 


                                                                                 
                                      




                                                                   
                                      




                                                                         
                                      




                                                                         
                                      




                                                                                 
                                      




                                                                        
                                      




                                                                     
                                      




                                                                                 
                                      




                                                                            
                                      




                                                                   
                                      




                                                                           
                                      




                                                                             
                                      




                                                                     
                                      




                                                                      
                                      




                                                                                      
                                      



                                                                  
         
                                      
 

                                                                           
         
                                      
 

                                                                        
         
                                      
 

                                                                              
         
                                      
 

                                                                             
         
                                      
 

                                                                                     
         























































                                                                                       
 






                                                                                                                                             
 


                                                                                       
                                                         
 

                                                                      
 
                                                                                             
 
                                                                
 
                                                              
 
                                                                 
 
                                                                     
 



                                                         
 



                                                           
 

                                                                  
         
                
 
                                                                                 
                     
                                      


                  






                                                                                                                          
 


                                                                                       
                                                         





















                                                                                             
         
                  
 

                                                         


                  

                                                                
         
                
 

                                                           
         
                 
 






                                                                                                                                    
 


                                                                                    
                                                         
 

                                                                   
 
                                                                                          
 
                                                             
 
                                                           
 
                                                              
 
                                                                  
 

                                                      


                

                                                        


                



                                                               
 



                                                                      
 











                                                                                                                                                                      
 



                                                                           
                                                         
 

                                                          
 
                                                                                 
 






                                                     
 
                                                         
 

                                              


                





























                                                                   


                








                                               



                            
























                                                                                                                                                                                                              




                                                                              
                                                         
 
 




                                                                                    
                                                       








                                                            



















                                                       
                                                                             

                                        
                                   































































                                                            
                                                                                        
































                                                              
                                                        
                     
                                    


                  
                                                                      
                     
                                          


                  
                                                              
                     
                                          


                  












                                                              
             






















                                                                                                                                                                                                                                 


















                                                                                                      
                                                                                                      
                                                                                    





                                                                                                  
                                                                                
                                                            
                                                                  
                                                                    








                                                                                            





































































































































































































































































































































































































                                                                                                       
 
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: def.proto

package proto

import (
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	math "math"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

type AdReplyInfo_AD_REPLY_INFO_MEDIATYPE int32

const (
	AdReplyInfo_NONE  AdReplyInfo_AD_REPLY_INFO_MEDIATYPE = 0
	AdReplyInfo_IMAGE AdReplyInfo_AD_REPLY_INFO_MEDIATYPE = 1
	AdReplyInfo_VIDEO AdReplyInfo_AD_REPLY_INFO_MEDIATYPE = 2
)

var AdReplyInfo_AD_REPLY_INFO_MEDIATYPE_name = map[int32]string{
	0: "NONE",
	1: "IMAGE",
	2: "VIDEO",
}

var AdReplyInfo_AD_REPLY_INFO_MEDIATYPE_value = map[string]int32{
	"NONE":  0,
	"IMAGE": 1,
	"VIDEO": 2,
}

func (x AdReplyInfo_AD_REPLY_INFO_MEDIATYPE) Enum() *AdReplyInfo_AD_REPLY_INFO_MEDIATYPE {
	p := new(AdReplyInfo_AD_REPLY_INFO_MEDIATYPE)
	*p = x
	return p
}

func (x AdReplyInfo_AD_REPLY_INFO_MEDIATYPE) String() string {
	return proto.EnumName(AdReplyInfo_AD_REPLY_INFO_MEDIATYPE_name, int32(x))
}

func (x *AdReplyInfo_AD_REPLY_INFO_MEDIATYPE) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(AdReplyInfo_AD_REPLY_INFO_MEDIATYPE_value, data, "AdReplyInfo_AD_REPLY_INFO_MEDIATYPE")
	if err != nil {
		return err
	}
	*x = AdReplyInfo_AD_REPLY_INFO_MEDIATYPE(value)
	return nil
}

func (AdReplyInfo_AD_REPLY_INFO_MEDIATYPE) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{11, 0}
}

type ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE int32

const (
	ExtendedTextMessage_SANS_SERIF        ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE = 0
	ExtendedTextMessage_SERIF             ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE = 1
	ExtendedTextMessage_NORICAN_REGULAR   ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE = 2
	ExtendedTextMessage_BRYNDAN_WRITE     ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE = 3
	ExtendedTextMessage_BEBASNEUE_REGULAR ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE = 4
	ExtendedTextMessage_OSWALD_HEAVY      ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE = 5
)

var ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE_name = map[int32]string{
	0: "SANS_SERIF",
	1: "SERIF",
	2: "NORICAN_REGULAR",
	3: "BRYNDAN_WRITE",
	4: "BEBASNEUE_REGULAR",
	5: "OSWALD_HEAVY",
}

var ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE_value = map[string]int32{
	"SANS_SERIF":        0,
	"SERIF":             1,
	"NORICAN_REGULAR":   2,
	"BRYNDAN_WRITE":     3,
	"BEBASNEUE_REGULAR": 4,
	"OSWALD_HEAVY":      5,
}

func (x ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE) Enum() *ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE {
	p := new(ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE)
	*p = x
	return p
}

func (x ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE) String() string {
	return proto.EnumName(ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE_name, int32(x))
}

func (x *ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE_value, data, "ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE")
	if err != nil {
		return err
	}
	*x = ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE(value)
	return nil
}

func (ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{17, 0}
}

type ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE int32

const (
	ExtendedTextMessage_NONE  ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE = 0
	ExtendedTextMessage_VIDEO ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE = 1
)

var ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE_name = map[int32]string{
	0: "NONE",
	1: "VIDEO",
}

var ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE_value = map[string]int32{
	"NONE":  0,
	"VIDEO": 1,
}

func (x ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE) Enum() *ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE {
	p := new(ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE)
	*p = x
	return p
}

func (x ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE) String() string {
	return proto.EnumName(ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE_name, int32(x))
}

func (x *ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE_value, data, "ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE")
	if err != nil {
		return err
	}
	*x = ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE(value)
	return nil
}

func (ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{17, 1}
}

type VideoMessage_VIDEO_MESSAGE_ATTRIBUTION int32

const (
	VideoMessage_NONE  VideoMessage_VIDEO_MESSAGE_ATTRIBUTION = 0
	VideoMessage_GIPHY VideoMessage_VIDEO_MESSAGE_ATTRIBUTION = 1
	VideoMessage_TENOR VideoMessage_VIDEO_MESSAGE_ATTRIBUTION = 2
)

var VideoMessage_VIDEO_MESSAGE_ATTRIBUTION_name = map[int32]string{
	0: "NONE",
	1: "GIPHY",
	2: "TENOR",
}

var VideoMessage_VIDEO_MESSAGE_ATTRIBUTION_value = map[string]int32{
	"NONE":  0,
	"GIPHY": 1,
	"TENOR": 2,
}

func (x VideoMessage_VIDEO_MESSAGE_ATTRIBUTION) Enum() *VideoMessage_VIDEO_MESSAGE_ATTRIBUTION {
	p := new(VideoMessage_VIDEO_MESSAGE_ATTRIBUTION)
	*p = x
	return p
}

func (x VideoMessage_VIDEO_MESSAGE_ATTRIBUTION) String() string {
	return proto.EnumName(VideoMessage_VIDEO_MESSAGE_ATTRIBUTION_name, int32(x))
}

func (x *VideoMessage_VIDEO_MESSAGE_ATTRIBUTION) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(VideoMessage_VIDEO_MESSAGE_ATTRIBUTION_value, data, "VideoMessage_VIDEO_MESSAGE_ATTRIBUTION")
	if err != nil {
		return err
	}
	*x = VideoMessage_VIDEO_MESSAGE_ATTRIBUTION(value)
	return nil
}

func (VideoMessage_VIDEO_MESSAGE_ATTRIBUTION) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{20, 0}
}

type ProtocolMessage_PROTOCOL_MESSAGE_TYPE int32

const (
	ProtocolMessage_REVOKE            ProtocolMessage_PROTOCOL_MESSAGE_TYPE = 0
	ProtocolMessage_EPHEMERAL_SETTING ProtocolMessage_PROTOCOL_MESSAGE_TYPE = 3
)

var ProtocolMessage_PROTOCOL_MESSAGE_TYPE_name = map[int32]string{
	0: "REVOKE",
	3: "EPHEMERAL_SETTING",
}

var ProtocolMessage_PROTOCOL_MESSAGE_TYPE_value = map[string]int32{
	"REVOKE":            0,
	"EPHEMERAL_SETTING": 3,
}

func (x ProtocolMessage_PROTOCOL_MESSAGE_TYPE) Enum() *ProtocolMessage_PROTOCOL_MESSAGE_TYPE {
	p := new(ProtocolMessage_PROTOCOL_MESSAGE_TYPE)
	*p = x
	return p
}

func (x ProtocolMessage_PROTOCOL_MESSAGE_TYPE) String() string {
	return proto.EnumName(ProtocolMessage_PROTOCOL_MESSAGE_TYPE_name, int32(x))
}

func (x *ProtocolMessage_PROTOCOL_MESSAGE_TYPE) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(ProtocolMessage_PROTOCOL_MESSAGE_TYPE_value, data, "ProtocolMessage_PROTOCOL_MESSAGE_TYPE")
	if err != nil {
		return err
	}
	*x = ProtocolMessage_PROTOCOL_MESSAGE_TYPE(value)
	return nil
}

func (ProtocolMessage_PROTOCOL_MESSAGE_TYPE) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{23, 0}
}

type HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE int32

const (
	HSMDateTimeComponent_MONDAY    HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE = 1
	HSMDateTimeComponent_TUESDAY   HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE = 2
	HSMDateTimeComponent_WEDNESDAY HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE = 3
	HSMDateTimeComponent_THURSDAY  HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE = 4
	HSMDateTimeComponent_FRIDAY    HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE = 5
	HSMDateTimeComponent_SATURDAY  HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE = 6
	HSMDateTimeComponent_SUNDAY    HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE = 7
)

var HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE_name = map[int32]string{
	1: "MONDAY",
	2: "TUESDAY",
	3: "WEDNESDAY",
	4: "THURSDAY",
	5: "FRIDAY",
	6: "SATURDAY",
	7: "SUNDAY",
}

var HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE_value = map[string]int32{
	"MONDAY":    1,
	"TUESDAY":   2,
	"WEDNESDAY": 3,
	"THURSDAY":  4,
	"FRIDAY":    5,
	"SATURDAY":  6,
	"SUNDAY":    7,
}

func (x HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE) Enum() *HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE {
	p := new(HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE)
	*p = x
	return p
}

func (x HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE) String() string {
	return proto.EnumName(HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE_name, int32(x))
}

func (x *HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE_value, data, "HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE")
	if err != nil {
		return err
	}
	*x = HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE(value)
	return nil
}

func (HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{26, 0}
}

type HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE int32

const (
	HSMDateTimeComponent_GREGORIAN   HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE = 1
	HSMDateTimeComponent_SOLAR_HIJRI HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE = 2
)

var HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE_name = map[int32]string{
	1: "GREGORIAN",
	2: "SOLAR_HIJRI",
}

var HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE_value = map[string]int32{
	"GREGORIAN":   1,
	"SOLAR_HIJRI": 2,
}

func (x HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE) Enum() *HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE {
	p := new(HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE)
	*p = x
	return p
}

func (x HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE) String() string {
	return proto.EnumName(HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE_name, int32(x))
}

func (x *HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE_value, data, "HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE")
	if err != nil {
		return err
	}
	*x = HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE(value)
	return nil
}

func (HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{26, 1}
}

type WebFeatures_WEB_FEATURES_FLAG int32

const (
	WebFeatures_NOT_STARTED   WebFeatures_WEB_FEATURES_FLAG = 0
	WebFeatures_FORCE_UPGRADE WebFeatures_WEB_FEATURES_FLAG = 1
	WebFeatures_DEVELOPMENT   WebFeatures_WEB_FEATURES_FLAG = 2
	WebFeatures_PRODUCTION    WebFeatures_WEB_FEATURES_FLAG = 3
)

var WebFeatures_WEB_FEATURES_FLAG_name = map[int32]string{
	0: "NOT_STARTED",
	1: "FORCE_UPGRADE",
	2: "DEVELOPMENT",
	3: "PRODUCTION",
}

var WebFeatures_WEB_FEATURES_FLAG_value = map[string]int32{
	"NOT_STARTED":   0,
	"FORCE_UPGRADE": 1,
	"DEVELOPMENT":   2,
	"PRODUCTION":    3,
}

func (x WebFeatures_WEB_FEATURES_FLAG) Enum() *WebFeatures_WEB_FEATURES_FLAG {
	p := new(WebFeatures_WEB_FEATURES_FLAG)
	*p = x
	return p
}

func (x WebFeatures_WEB_FEATURES_FLAG) String() string {
	return proto.EnumName(WebFeatures_WEB_FEATURES_FLAG_name, int32(x))
}

func (x *WebFeatures_WEB_FEATURES_FLAG) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(WebFeatures_WEB_FEATURES_FLAG_value, data, "WebFeatures_WEB_FEATURES_FLAG")
	if err != nil {
		return err
	}
	*x = WebFeatures_WEB_FEATURES_FLAG(value)
	return nil
}

func (WebFeatures_WEB_FEATURES_FLAG) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{48, 0}
}

type PaymentInfo_PAYMENT_INFO_STATUS int32

const (
	PaymentInfo_UNKNOWN_STATUS     PaymentInfo_PAYMENT_INFO_STATUS = 0
	PaymentInfo_PROCESSING         PaymentInfo_PAYMENT_INFO_STATUS = 1
	PaymentInfo_SENT               PaymentInfo_PAYMENT_INFO_STATUS = 2
	PaymentInfo_NEED_TO_ACCEPT     PaymentInfo_PAYMENT_INFO_STATUS = 3
	PaymentInfo_COMPLETE           PaymentInfo_PAYMENT_INFO_STATUS = 4
	PaymentInfo_COULD_NOT_COMPLETE PaymentInfo_PAYMENT_INFO_STATUS = 5
	PaymentInfo_REFUNDED           PaymentInfo_PAYMENT_INFO_STATUS = 6
	PaymentInfo_EXPIRED            PaymentInfo_PAYMENT_INFO_STATUS = 7
	PaymentInfo_REJECTED           PaymentInfo_PAYMENT_INFO_STATUS = 8
	PaymentInfo_CANCELLED          PaymentInfo_PAYMENT_INFO_STATUS = 9
	PaymentInfo_WAITING_FOR_PAYER  PaymentInfo_PAYMENT_INFO_STATUS = 10
	PaymentInfo_WAITING            PaymentInfo_PAYMENT_INFO_STATUS = 11
)

var PaymentInfo_PAYMENT_INFO_STATUS_name = map[int32]string{
	0:  "UNKNOWN_STATUS",
	1:  "PROCESSING",
	2:  "SENT",
	3:  "NEED_TO_ACCEPT",
	4:  "COMPLETE",
	5:  "COULD_NOT_COMPLETE",
	6:  "REFUNDED",
	7:  "EXPIRED",
	8:  "REJECTED",
	9:  "CANCELLED",
	10: "WAITING_FOR_PAYER",
	11: "WAITING",
}

var PaymentInfo_PAYMENT_INFO_STATUS_value = map[string]int32{
	"UNKNOWN_STATUS":     0,
	"PROCESSING":         1,
	"SENT":               2,
	"NEED_TO_ACCEPT":     3,
	"COMPLETE":           4,
	"COULD_NOT_COMPLETE": 5,
	"REFUNDED":           6,
	"EXPIRED":            7,
	"REJECTED":           8,
	"CANCELLED":          9,
	"WAITING_FOR_PAYER":  10,
	"WAITING":            11,
}

func (x PaymentInfo_PAYMENT_INFO_STATUS) Enum() *PaymentInfo_PAYMENT_INFO_STATUS {
	p := new(PaymentInfo_PAYMENT_INFO_STATUS)
	*p = x
	return p
}

func (x PaymentInfo_PAYMENT_INFO_STATUS) String() string {
	return proto.EnumName(PaymentInfo_PAYMENT_INFO_STATUS_name, int32(x))
}

func (x *PaymentInfo_PAYMENT_INFO_STATUS) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(PaymentInfo_PAYMENT_INFO_STATUS_value, data, "PaymentInfo_PAYMENT_INFO_STATUS")
	if err != nil {
		return err
	}
	*x = PaymentInfo_PAYMENT_INFO_STATUS(value)
	return nil
}

func (PaymentInfo_PAYMENT_INFO_STATUS) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{52, 0}
}

type WebMessageInfo_WEB_MESSAGE_INFO_STATUS int32

const (
	WebMessageInfo_ERROR        WebMessageInfo_WEB_MESSAGE_INFO_STATUS = 0
	WebMessageInfo_PENDING      WebMessageInfo_WEB_MESSAGE_INFO_STATUS = 1
	WebMessageInfo_SERVER_ACK   WebMessageInfo_WEB_MESSAGE_INFO_STATUS = 2
	WebMessageInfo_DELIVERY_ACK WebMessageInfo_WEB_MESSAGE_INFO_STATUS = 3
	WebMessageInfo_READ         WebMessageInfo_WEB_MESSAGE_INFO_STATUS = 4
	WebMessageInfo_PLAYED       WebMessageInfo_WEB_MESSAGE_INFO_STATUS = 5
)

var WebMessageInfo_WEB_MESSAGE_INFO_STATUS_name = map[int32]string{
	0: "ERROR",
	1: "PENDING",
	2: "SERVER_ACK",
	3: "DELIVERY_ACK",
	4: "READ",
	5: "PLAYED",
}

var WebMessageInfo_WEB_MESSAGE_INFO_STATUS_value = map[string]int32{
	"ERROR":        0,
	"PENDING":      1,
	"SERVER_ACK":   2,
	"DELIVERY_ACK": 3,
	"READ":         4,
	"PLAYED":       5,
}

func (x WebMessageInfo_WEB_MESSAGE_INFO_STATUS) Enum() *WebMessageInfo_WEB_MESSAGE_INFO_STATUS {
	p := new(WebMessageInfo_WEB_MESSAGE_INFO_STATUS)
	*p = x
	return p
}

func (x WebMessageInfo_WEB_MESSAGE_INFO_STATUS) String() string {
	return proto.EnumName(WebMessageInfo_WEB_MESSAGE_INFO_STATUS_name, int32(x))
}

func (x *WebMessageInfo_WEB_MESSAGE_INFO_STATUS) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(WebMessageInfo_WEB_MESSAGE_INFO_STATUS_value, data, "WebMessageInfo_WEB_MESSAGE_INFO_STATUS")
	if err != nil {
		return err
	}
	*x = WebMessageInfo_WEB_MESSAGE_INFO_STATUS(value)
	return nil
}

func (WebMessageInfo_WEB_MESSAGE_INFO_STATUS) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{53, 0}
}

type WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE int32

const (
	WebMessageInfo_UNKNOWN                                                  WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 0
	WebMessageInfo_REVOKE                                                   WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 1
	WebMessageInfo_CIPHERTEXT                                               WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 2
	WebMessageInfo_FUTUREPROOF                                              WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 3
	WebMessageInfo_NON_VERIFIED_TRANSITION                                  WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 4
	WebMessageInfo_UNVERIFIED_TRANSITION                                    WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 5
	WebMessageInfo_VERIFIED_TRANSITION                                      WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 6
	WebMessageInfo_VERIFIED_LOW_UNKNOWN                                     WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 7
	WebMessageInfo_VERIFIED_HIGH                                            WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 8
	WebMessageInfo_VERIFIED_INITIAL_UNKNOWN                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 9
	WebMessageInfo_VERIFIED_INITIAL_LOW                                     WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 10
	WebMessageInfo_VERIFIED_INITIAL_HIGH                                    WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 11
	WebMessageInfo_VERIFIED_TRANSITION_ANY_TO_NONE                          WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 12
	WebMessageInfo_VERIFIED_TRANSITION_ANY_TO_HIGH                          WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 13
	WebMessageInfo_VERIFIED_TRANSITION_HIGH_TO_LOW                          WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 14
	WebMessageInfo_VERIFIED_TRANSITION_HIGH_TO_UNKNOWN                      WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 15
	WebMessageInfo_VERIFIED_TRANSITION_UNKNOWN_TO_LOW                       WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 16
	WebMessageInfo_VERIFIED_TRANSITION_LOW_TO_UNKNOWN                       WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 17
	WebMessageInfo_VERIFIED_TRANSITION_NONE_TO_LOW                          WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 18
	WebMessageInfo_VERIFIED_TRANSITION_NONE_TO_UNKNOWN                      WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 19
	WebMessageInfo_GROUP_CREATE                                             WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 20
	WebMessageInfo_GROUP_CHANGE_SUBJECT                                     WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 21
	WebMessageInfo_GROUP_CHANGE_ICON                                        WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 22
	WebMessageInfo_GROUP_CHANGE_INVITE_LINK                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 23
	WebMessageInfo_GROUP_CHANGE_DESCRIPTION                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 24
	WebMessageInfo_GROUP_CHANGE_RESTRICT                                    WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 25
	WebMessageInfo_GROUP_CHANGE_ANNOUNCE                                    WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 26
	WebMessageInfo_GROUP_PARTICIPANT_ADD                                    WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 27
	WebMessageInfo_GROUP_PARTICIPANT_REMOVE                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 28
	WebMessageInfo_GROUP_PARTICIPANT_PROMOTE                                WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 29
	WebMessageInfo_GROUP_PARTICIPANT_DEMOTE                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 30
	WebMessageInfo_GROUP_PARTICIPANT_INVITE                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 31
	WebMessageInfo_GROUP_PARTICIPANT_LEAVE                                  WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 32
	WebMessageInfo_GROUP_PARTICIPANT_CHANGE_NUMBER                          WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 33
	WebMessageInfo_BROADCAST_CREATE                                         WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 34
	WebMessageInfo_BROADCAST_ADD                                            WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 35
	WebMessageInfo_BROADCAST_REMOVE                                         WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 36
	WebMessageInfo_GENERIC_NOTIFICATION                                     WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 37
	WebMessageInfo_E2E_IDENTITY_CHANGED                                     WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 38
	WebMessageInfo_E2E_ENCRYPTED                                            WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 39
	WebMessageInfo_CALL_MISSED_VOICE                                        WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 40
	WebMessageInfo_CALL_MISSED_VIDEO                                        WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 41
	WebMessageInfo_INDIVIDUAL_CHANGE_NUMBER                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 42
	WebMessageInfo_GROUP_DELETE                                             WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 43
	WebMessageInfo_GROUP_ANNOUNCE_MODE_MESSAGE_BOUNCE                       WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 44
	WebMessageInfo_CALL_MISSED_GROUP_VOICE                                  WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 45
	WebMessageInfo_CALL_MISSED_GROUP_VIDEO                                  WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 46
	WebMessageInfo_PAYMENT_CIPHERTEXT                                       WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 47
	WebMessageInfo_PAYMENT_FUTUREPROOF                                      WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 48
	WebMessageInfo_PAYMENT_TRANSACTION_STATUS_UPDATE_FAILED                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 49
	WebMessageInfo_PAYMENT_TRANSACTION_STATUS_UPDATE_REFUNDED               WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 50
	WebMessageInfo_PAYMENT_TRANSACTION_STATUS_UPDATE_REFUND_FAILED          WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 51
	WebMessageInfo_PAYMENT_TRANSACTION_STATUS_RECEIVER_PENDING_SETUP        WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 52
	WebMessageInfo_PAYMENT_TRANSACTION_STATUS_RECEIVER_SUCCESS_AFTER_HICCUP WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 53
	WebMessageInfo_PAYMENT_ACTION_ACCOUNT_SETUP_REMINDER                    WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 54
	WebMessageInfo_PAYMENT_ACTION_SEND_PAYMENT_REMINDER                     WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 55
	WebMessageInfo_PAYMENT_ACTION_SEND_PAYMENT_INVITATION                   WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 56
	WebMessageInfo_PAYMENT_ACTION_REQUEST_DECLINED                          WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 57
	WebMessageInfo_PAYMENT_ACTION_REQUEST_EXPIRED                           WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 58
	WebMessageInfo_PAYMENT_ACTION_REQUEST_CANCELLED                         WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 59
	WebMessageInfo_BIZ_VERIFIED_TRANSITION_TOP_TO_BOTTOM                    WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 60
	WebMessageInfo_BIZ_VERIFIED_TRANSITION_BOTTOM_TO_TOP                    WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 61
	WebMessageInfo_BIZ_INTRO_TOP                                            WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 62
	WebMessageInfo_BIZ_INTRO_BOTTOM                                         WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 63
	WebMessageInfo_BIZ_NAME_CHANGE                                          WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 64
	WebMessageInfo_BIZ_MOVE_TO_CONSUMER_APP                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 65
	WebMessageInfo_BIZ_TWO_TIER_MIGRATION_TOP                               WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 66
	WebMessageInfo_BIZ_TWO_TIER_MIGRATION_BOTTOM                            WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 67
	WebMessageInfo_OVERSIZED                                                WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 68
	WebMessageInfo_GROUP_CHANGE_NO_FREQUENTLY_FORWARDED                     WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 69
	WebMessageInfo_GROUP_V4_ADD_INVITE_SENT                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 70
	WebMessageInfo_GROUP_PARTICIPANT_ADD_REQUEST_JOIN                       WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 71
	WebMessageInfo_CHANGE_EPHEMERAL_SETTING                                 WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE = 72
)

var WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE_name = map[int32]string{
	0:  "UNKNOWN",
	1:  "REVOKE",
	2:  "CIPHERTEXT",
	3:  "FUTUREPROOF",
	4:  "NON_VERIFIED_TRANSITION",
	5:  "UNVERIFIED_TRANSITION",
	6:  "VERIFIED_TRANSITION",
	7:  "VERIFIED_LOW_UNKNOWN",
	8:  "VERIFIED_HIGH",
	9:  "VERIFIED_INITIAL_UNKNOWN",
	10: "VERIFIED_INITIAL_LOW",
	11: "VERIFIED_INITIAL_HIGH",
	12: "VERIFIED_TRANSITION_ANY_TO_NONE",
	13: "VERIFIED_TRANSITION_ANY_TO_HIGH",
	14: "VERIFIED_TRANSITION_HIGH_TO_LOW",
	15: "VERIFIED_TRANSITION_HIGH_TO_UNKNOWN",
	16: "VERIFIED_TRANSITION_UNKNOWN_TO_LOW",
	17: "VERIFIED_TRANSITION_LOW_TO_UNKNOWN",
	18: "VERIFIED_TRANSITION_NONE_TO_LOW",
	19: "VERIFIED_TRANSITION_NONE_TO_UNKNOWN",
	20: "GROUP_CREATE",
	21: "GROUP_CHANGE_SUBJECT",
	22: "GROUP_CHANGE_ICON",
	23: "GROUP_CHANGE_INVITE_LINK",
	24: "GROUP_CHANGE_DESCRIPTION",
	25: "GROUP_CHANGE_RESTRICT",
	26: "GROUP_CHANGE_ANNOUNCE",
	27: "GROUP_PARTICIPANT_ADD",
	28: "GROUP_PARTICIPANT_REMOVE",
	29: "GROUP_PARTICIPANT_PROMOTE",
	30: "GROUP_PARTICIPANT_DEMOTE",
	31: "GROUP_PARTICIPANT_INVITE",
	32: "GROUP_PARTICIPANT_LEAVE",
	33: "GROUP_PARTICIPANT_CHANGE_NUMBER",
	34: "BROADCAST_CREATE",
	35: "BROADCAST_ADD",
	36: "BROADCAST_REMOVE",
	37: "GENERIC_NOTIFICATION",
	38: "E2E_IDENTITY_CHANGED",
	39: "E2E_ENCRYPTED",
	40: "CALL_MISSED_VOICE",
	41: "CALL_MISSED_VIDEO",
	42: "INDIVIDUAL_CHANGE_NUMBER",
	43: "GROUP_DELETE",
	44: "GROUP_ANNOUNCE_MODE_MESSAGE_BOUNCE",
	45: "CALL_MISSED_GROUP_VOICE",
	46: "CALL_MISSED_GROUP_VIDEO",
	47: "PAYMENT_CIPHERTEXT",
	48: "PAYMENT_FUTUREPROOF",
	49: "PAYMENT_TRANSACTION_STATUS_UPDATE_FAILED",
	50: "PAYMENT_TRANSACTION_STATUS_UPDATE_REFUNDED",
	51: "PAYMENT_TRANSACTION_STATUS_UPDATE_REFUND_FAILED",
	52: "PAYMENT_TRANSACTION_STATUS_RECEIVER_PENDING_SETUP",
	53: "PAYMENT_TRANSACTION_STATUS_RECEIVER_SUCCESS_AFTER_HICCUP",
	54: "PAYMENT_ACTION_ACCOUNT_SETUP_REMINDER",
	55: "PAYMENT_ACTION_SEND_PAYMENT_REMINDER",
	56: "PAYMENT_ACTION_SEND_PAYMENT_INVITATION",
	57: "PAYMENT_ACTION_REQUEST_DECLINED",
	58: "PAYMENT_ACTION_REQUEST_EXPIRED",
	59: "PAYMENT_ACTION_REQUEST_CANCELLED",
	60: "BIZ_VERIFIED_TRANSITION_TOP_TO_BOTTOM",
	61: "BIZ_VERIFIED_TRANSITION_BOTTOM_TO_TOP",
	62: "BIZ_INTRO_TOP",
	63: "BIZ_INTRO_BOTTOM",
	64: "BIZ_NAME_CHANGE",
	65: "BIZ_MOVE_TO_CONSUMER_APP",
	66: "BIZ_TWO_TIER_MIGRATION_TOP",
	67: "BIZ_TWO_TIER_MIGRATION_BOTTOM",
	68: "OVERSIZED",
	69: "GROUP_CHANGE_NO_FREQUENTLY_FORWARDED",
	70: "GROUP_V4_ADD_INVITE_SENT",
	71: "GROUP_PARTICIPANT_ADD_REQUEST_JOIN",
	72: "CHANGE_EPHEMERAL_SETTING",
}

var WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE_value = map[string]int32{
	"UNKNOWN":                                                  0,
	"REVOKE":                                                   1,
	"CIPHERTEXT":                                               2,
	"FUTUREPROOF":                                              3,
	"NON_VERIFIED_TRANSITION":                                  4,
	"UNVERIFIED_TRANSITION":                                    5,
	"VERIFIED_TRANSITION":                                      6,
	"VERIFIED_LOW_UNKNOWN":                                     7,
	"VERIFIED_HIGH":                                            8,
	"VERIFIED_INITIAL_UNKNOWN":                                 9,
	"VERIFIED_INITIAL_LOW":                                     10,
	"VERIFIED_INITIAL_HIGH":                                    11,
	"VERIFIED_TRANSITION_ANY_TO_NONE":                          12,
	"VERIFIED_TRANSITION_ANY_TO_HIGH":                          13,
	"VERIFIED_TRANSITION_HIGH_TO_LOW":                          14,
	"VERIFIED_TRANSITION_HIGH_TO_UNKNOWN":                      15,
	"VERIFIED_TRANSITION_UNKNOWN_TO_LOW":                       16,
	"VERIFIED_TRANSITION_LOW_TO_UNKNOWN":                       17,
	"VERIFIED_TRANSITION_NONE_TO_LOW":                          18,
	"VERIFIED_TRANSITION_NONE_TO_UNKNOWN":                      19,
	"GROUP_CREATE":                                             20,
	"GROUP_CHANGE_SUBJECT":                                     21,
	"GROUP_CHANGE_ICON":                                        22,
	"GROUP_CHANGE_INVITE_LINK":                                 23,
	"GROUP_CHANGE_DESCRIPTION":                                 24,
	"GROUP_CHANGE_RESTRICT":                                    25,
	"GROUP_CHANGE_ANNOUNCE":                                    26,
	"GROUP_PARTICIPANT_ADD":                                    27,
	"GROUP_PARTICIPANT_REMOVE":                                 28,
	"GROUP_PARTICIPANT_PROMOTE":                                29,
	"GROUP_PARTICIPANT_DEMOTE":                                 30,
	"GROUP_PARTICIPANT_INVITE":                                 31,
	"GROUP_PARTICIPANT_LEAVE":                                  32,
	"GROUP_PARTICIPANT_CHANGE_NUMBER":                          33,
	"BROADCAST_CREATE":                                         34,
	"BROADCAST_ADD":                                            35,
	"BROADCAST_REMOVE":                                         36,
	"GENERIC_NOTIFICATION":                                     37,
	"E2E_IDENTITY_CHANGED":                                     38,
	"E2E_ENCRYPTED":                                            39,
	"CALL_MISSED_VOICE":                                        40,
	"CALL_MISSED_VIDEO":                                        41,
	"INDIVIDUAL_CHANGE_NUMBER":                                 42,
	"GROUP_DELETE":                                             43,
	"GROUP_ANNOUNCE_MODE_MESSAGE_BOUNCE":                       44,
	"CALL_MISSED_GROUP_VOICE":                                  45,
	"CALL_MISSED_GROUP_VIDEO":                                  46,
	"PAYMENT_CIPHERTEXT":                                       47,
	"PAYMENT_FUTUREPROOF":                                      48,
	"PAYMENT_TRANSACTION_STATUS_UPDATE_FAILED":                 49,
	"PAYMENT_TRANSACTION_STATUS_UPDATE_REFUNDED":               50,
	"PAYMENT_TRANSACTION_STATUS_UPDATE_REFUND_FAILED":          51,
	"PAYMENT_TRANSACTION_STATUS_RECEIVER_PENDING_SETUP":        52,
	"PAYMENT_TRANSACTION_STATUS_RECEIVER_SUCCESS_AFTER_HICCUP": 53,
	"PAYMENT_ACTION_ACCOUNT_SETUP_REMINDER":                    54,
	"PAYMENT_ACTION_SEND_PAYMENT_REMINDER":                     55,
	"PAYMENT_ACTION_SEND_PAYMENT_INVITATION":                   56,
	"PAYMENT_ACTION_REQUEST_DECLINED":                          57,
	"PAYMENT_ACTION_REQUEST_EXPIRED":                           58,
	"PAYMENT_ACTION_REQUEST_CANCELLED":                         59,
	"BIZ_VERIFIED_TRANSITION_TOP_TO_BOTTOM":                    60,
	"BIZ_VERIFIED_TRANSITION_BOTTOM_TO_TOP":                    61,
	"BIZ_INTRO_TOP":                                            62,
	"BIZ_INTRO_BOTTOM":                                         63,
	"BIZ_NAME_CHANGE":                                          64,
	"BIZ_MOVE_TO_CONSUMER_APP":                                 65,
	"BIZ_TWO_TIER_MIGRATION_TOP":                               66,
	"BIZ_TWO_TIER_MIGRATION_BOTTOM":                            67,
	"OVERSIZED":                                                68,
	"GROUP_CHANGE_NO_FREQUENTLY_FORWARDED":                     69,
	"GROUP_V4_ADD_INVITE_SENT":                                 70,
	"GROUP_PARTICIPANT_ADD_REQUEST_JOIN":                       71,
	"CHANGE_EPHEMERAL_SETTING":                                 72,
}

func (x WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE) Enum() *WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE {
	p := new(WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE)
	*p = x
	return p
}

func (x WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE) String() string {
	return proto.EnumName(WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE_name, int32(x))
}

func (x *WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE_value, data, "WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE")
	if err != nil {
		return err
	}
	*x = WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE(value)
	return nil
}

func (WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{53, 1}
}

type HydratedQuickReplyButton struct {
	DisplayText          *string  `protobuf:"bytes,1,opt,name=displayText" json:"displayText,omitempty"`
	Id                   *string  `protobuf:"bytes,2,opt,name=id" json:"id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *HydratedQuickReplyButton) Reset()         { *m = HydratedQuickReplyButton{} }
func (m *HydratedQuickReplyButton) String() string { return proto.CompactTextString(m) }
func (*HydratedQuickReplyButton) ProtoMessage()    {}
func (*HydratedQuickReplyButton) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{0}
}

func (m *HydratedQuickReplyButton) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HydratedQuickReplyButton.Unmarshal(m, b)
}
func (m *HydratedQuickReplyButton) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HydratedQuickReplyButton.Marshal(b, m, deterministic)
}
func (m *HydratedQuickReplyButton) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HydratedQuickReplyButton.Merge(m, src)
}
func (m *HydratedQuickReplyButton) XXX_Size() int {
	return xxx_messageInfo_HydratedQuickReplyButton.Size(m)
}
func (m *HydratedQuickReplyButton) XXX_DiscardUnknown() {
	xxx_messageInfo_HydratedQuickReplyButton.DiscardUnknown(m)
}

var xxx_messageInfo_HydratedQuickReplyButton proto.InternalMessageInfo

func (m *HydratedQuickReplyButton) GetDisplayText() string {
	if m != nil && m.DisplayText != nil {
		return *m.DisplayText
	}
	return ""
}

func (m *HydratedQuickReplyButton) GetId() string {
	if m != nil && m.Id != nil {
		return *m.Id
	}
	return ""
}

type HydratedURLButton struct {
	DisplayText          *string  `protobuf:"bytes,1,opt,name=displayText" json:"displayText,omitempty"`
	Url                  *string  `protobuf:"bytes,2,opt,name=url" json:"url,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *HydratedURLButton) Reset()         { *m = HydratedURLButton{} }
func (m *HydratedURLButton) String() string { return proto.CompactTextString(m) }
func (*HydratedURLButton) ProtoMessage()    {}
func (*HydratedURLButton) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{1}
}

func (m *HydratedURLButton) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HydratedURLButton.Unmarshal(m, b)
}
func (m *HydratedURLButton) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HydratedURLButton.Marshal(b, m, deterministic)
}
func (m *HydratedURLButton) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HydratedURLButton.Merge(m, src)
}
func (m *HydratedURLButton) XXX_Size() int {
	return xxx_messageInfo_HydratedURLButton.Size(m)
}
func (m *HydratedURLButton) XXX_DiscardUnknown() {
	xxx_messageInfo_HydratedURLButton.DiscardUnknown(m)
}

var xxx_messageInfo_HydratedURLButton proto.InternalMessageInfo

func (m *HydratedURLButton) GetDisplayText() string {
	if m != nil && m.DisplayText != nil {
		return *m.DisplayText
	}
	return ""
}

func (m *HydratedURLButton) GetUrl() string {
	if m != nil && m.Url != nil {
		return *m.Url
	}
	return ""
}

type HydratedCallButton struct {
	DisplayText          *string  `protobuf:"bytes,1,opt,name=displayText" json:"displayText,omitempty"`
	PhoneNumber          *string  `protobuf:"bytes,2,opt,name=phoneNumber" json:"phoneNumber,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *HydratedCallButton) Reset()         { *m = HydratedCallButton{} }
func (m *HydratedCallButton) String() string { return proto.CompactTextString(m) }
func (*HydratedCallButton) ProtoMessage()    {}
func (*HydratedCallButton) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{2}
}

func (m *HydratedCallButton) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HydratedCallButton.Unmarshal(m, b)
}
func (m *HydratedCallButton) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HydratedCallButton.Marshal(b, m, deterministic)
}
func (m *HydratedCallButton) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HydratedCallButton.Merge(m, src)
}
func (m *HydratedCallButton) XXX_Size() int {
	return xxx_messageInfo_HydratedCallButton.Size(m)
}
func (m *HydratedCallButton) XXX_DiscardUnknown() {
	xxx_messageInfo_HydratedCallButton.DiscardUnknown(m)
}

var xxx_messageInfo_HydratedCallButton proto.InternalMessageInfo

func (m *HydratedCallButton) GetDisplayText() string {
	if m != nil && m.DisplayText != nil {
		return *m.DisplayText
	}
	return ""
}

func (m *HydratedCallButton) GetPhoneNumber() string {
	if m != nil && m.PhoneNumber != nil {
		return *m.PhoneNumber
	}
	return ""
}

type HydratedTemplateButton struct {
	Index *uint32 `protobuf:"varint,4,opt,name=index" json:"index,omitempty"`
	// Types that are valid to be assigned to HydratedButton:
	//	*HydratedTemplateButton_QuickReplyButton
	//	*HydratedTemplateButton_UrlButton
	//	*HydratedTemplateButton_CallButton
	HydratedButton       isHydratedTemplateButton_HydratedButton `protobuf_oneof:"hydratedButton"`
	XXX_NoUnkeyedLiteral struct{}                                `json:"-"`
	XXX_unrecognized     []byte                                  `json:"-"`
	XXX_sizecache        int32                                   `json:"-"`
}

func (m *HydratedTemplateButton) Reset()         { *m = HydratedTemplateButton{} }
func (m *HydratedTemplateButton) String() string { return proto.CompactTextString(m) }
func (*HydratedTemplateButton) ProtoMessage()    {}
func (*HydratedTemplateButton) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{3}
}

func (m *HydratedTemplateButton) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HydratedTemplateButton.Unmarshal(m, b)
}
func (m *HydratedTemplateButton) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HydratedTemplateButton.Marshal(b, m, deterministic)
}
func (m *HydratedTemplateButton) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HydratedTemplateButton.Merge(m, src)
}
func (m *HydratedTemplateButton) XXX_Size() int {
	return xxx_messageInfo_HydratedTemplateButton.Size(m)
}
func (m *HydratedTemplateButton) XXX_DiscardUnknown() {
	xxx_messageInfo_HydratedTemplateButton.DiscardUnknown(m)
}

var xxx_messageInfo_HydratedTemplateButton proto.InternalMessageInfo

func (m *HydratedTemplateButton) GetIndex() uint32 {
	if m != nil && m.Index != nil {
		return *m.Index
	}
	return 0
}

type isHydratedTemplateButton_HydratedButton interface {
	isHydratedTemplateButton_HydratedButton()
}

type HydratedTemplateButton_QuickReplyButton struct {
	QuickReplyButton *HydratedQuickReplyButton `protobuf:"bytes,1,opt,name=quickReplyButton,oneof"`
}

type HydratedTemplateButton_UrlButton struct {
	UrlButton *HydratedURLButton `protobuf:"bytes,2,opt,name=urlButton,oneof"`
}

type HydratedTemplateButton_CallButton struct {
	CallButton *HydratedCallButton `protobuf:"bytes,3,opt,name=callButton,oneof"`
}

func (*HydratedTemplateButton_QuickReplyButton) isHydratedTemplateButton_HydratedButton() {}

func (*HydratedTemplateButton_UrlButton) isHydratedTemplateButton_HydratedButton() {}

func (*HydratedTemplateButton_CallButton) isHydratedTemplateButton_HydratedButton() {}

func (m *HydratedTemplateButton) GetHydratedButton() isHydratedTemplateButton_HydratedButton {
	if m != nil {
		return m.HydratedButton
	}
	return nil
}

func (m *HydratedTemplateButton) GetQuickReplyButton() *HydratedQuickReplyButton {
	if x, ok := m.GetHydratedButton().(*HydratedTemplateButton_QuickReplyButton); ok {
		return x.QuickReplyButton
	}
	return nil
}

func (m *HydratedTemplateButton) GetUrlButton() *HydratedURLButton {
	if x, ok := m.GetHydratedButton().(*HydratedTemplateButton_UrlButton); ok {
		return x.UrlButton
	}
	return nil
}

func (m *HydratedTemplateButton) GetCallButton() *HydratedCallButton {
	if x, ok := m.GetHydratedButton().(*HydratedTemplateButton_CallButton); ok {
		return x.CallButton
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*HydratedTemplateButton) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*HydratedTemplateButton_QuickReplyButton)(nil),
		(*HydratedTemplateButton_UrlButton)(nil),
		(*HydratedTemplateButton_CallButton)(nil),
	}
}

type QuickReplyButton struct {
	DisplayText          *HighlyStructuredMessage `protobuf:"bytes,1,opt,name=displayText" json:"displayText,omitempty"`
	Id                   *string                  `protobuf:"bytes,2,opt,name=id" json:"id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (m *QuickReplyButton) Reset()         { *m = QuickReplyButton{} }
func (m *QuickReplyButton) String() string { return proto.CompactTextString(m) }
func (*QuickReplyButton) ProtoMessage()    {}
func (*QuickReplyButton) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{4}
}

func (m *QuickReplyButton) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_QuickReplyButton.Unmarshal(m, b)
}
func (m *QuickReplyButton) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_QuickReplyButton.Marshal(b, m, deterministic)
}
func (m *QuickReplyButton) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QuickReplyButton.Merge(m, src)
}
func (m *QuickReplyButton) XXX_Size() int {
	return xxx_messageInfo_QuickReplyButton.Size(m)
}
func (m *QuickReplyButton) XXX_DiscardUnknown() {
	xxx_messageInfo_QuickReplyButton.DiscardUnknown(m)
}

var xxx_messageInfo_QuickReplyButton proto.InternalMessageInfo

func (m *QuickReplyButton) GetDisplayText() *HighlyStructuredMessage {
	if m != nil {
		return m.DisplayText
	}
	return nil
}

func (m *QuickReplyButton) GetId() string {
	if m != nil && m.Id != nil {
		return *m.Id
	}
	return ""
}

type URLButton struct {
	DisplayText          *HighlyStructuredMessage `protobuf:"bytes,1,opt,name=displayText" json:"displayText,omitempty"`
	Url                  *HighlyStructuredMessage `protobuf:"bytes,2,opt,name=url" json:"url,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (m *URLButton) Reset()         { *m = URLButton{} }
func (m *URLButton) String() string { return proto.CompactTextString(m) }
func (*URLButton) ProtoMessage()    {}
func (*URLButton) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{5}
}

func (m *URLButton) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_URLButton.Unmarshal(m, b)
}
func (m *URLButton) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_URLButton.Marshal(b, m, deterministic)
}
func (m *URLButton) XXX_Merge(src proto.Message) {
	xxx_messageInfo_URLButton.Merge(m, src)
}
func (m *URLButton) XXX_Size() int {
	return xxx_messageInfo_URLButton.Size(m)
}
func (m *URLButton) XXX_DiscardUnknown() {
	xxx_messageInfo_URLButton.DiscardUnknown(m)
}

var xxx_messageInfo_URLButton proto.InternalMessageInfo

func (m *URLButton) GetDisplayText() *HighlyStructuredMessage {
	if m != nil {
		return m.DisplayText
	}
	return nil
}

func (m *URLButton) GetUrl() *HighlyStructuredMessage {
	if m != nil {
		return m.Url
	}
	return nil
}

type CallButton struct {
	DisplayText          *HighlyStructuredMessage `protobuf:"bytes,1,opt,name=displayText" json:"displayText,omitempty"`
	PhoneNumber          *HighlyStructuredMessage `protobuf:"bytes,2,opt,name=phoneNumber" json:"phoneNumber,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (m *CallButton) Reset()         { *m = CallButton{} }
func (m *CallButton) String() string { return proto.CompactTextString(m) }
func (*CallButton) ProtoMessage()    {}
func (*CallButton) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{6}
}

func (m *CallButton) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CallButton.Unmarshal(m, b)
}
func (m *CallButton) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CallButton.Marshal(b, m, deterministic)
}
func (m *CallButton) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CallButton.Merge(m, src)
}
func (m *CallButton) XXX_Size() int {
	return xxx_messageInfo_CallButton.Size(m)
}
func (m *CallButton) XXX_DiscardUnknown() {
	xxx_messageInfo_CallButton.DiscardUnknown(m)
}

var xxx_messageInfo_CallButton proto.InternalMessageInfo

func (m *CallButton) GetDisplayText() *HighlyStructuredMessage {
	if m != nil {
		return m.DisplayText
	}
	return nil
}

func (m *CallButton) GetPhoneNumber() *HighlyStructuredMessage {
	if m != nil {
		return m.PhoneNumber
	}
	return nil
}

type TemplateButton struct {
	Index *uint32 `protobuf:"varint,4,opt,name=index" json:"index,omitempty"`
	// Types that are valid to be assigned to Button:
	//	*TemplateButton_QuickReplyButton
	//	*TemplateButton_UrlButton
	//	*TemplateButton_CallButton
	Button               isTemplateButton_Button `protobuf_oneof:"button"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

func (m *TemplateButton) Reset()         { *m = TemplateButton{} }
func (m *TemplateButton) String() string { return proto.CompactTextString(m) }
func (*TemplateButton) ProtoMessage()    {}
func (*TemplateButton) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{7}
}

func (m *TemplateButton) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TemplateButton.Unmarshal(m, b)
}
func (m *TemplateButton) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TemplateButton.Marshal(b, m, deterministic)
}
func (m *TemplateButton) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TemplateButton.Merge(m, src)
}
func (m *TemplateButton) XXX_Size() int {
	return xxx_messageInfo_TemplateButton.Size(m)
}
func (m *TemplateButton) XXX_DiscardUnknown() {
	xxx_messageInfo_TemplateButton.DiscardUnknown(m)
}

var xxx_messageInfo_TemplateButton proto.InternalMessageInfo

func (m *TemplateButton) GetIndex() uint32 {
	if m != nil && m.Index != nil {
		return *m.Index
	}
	return 0
}

type isTemplateButton_Button interface {
	isTemplateButton_Button()
}

type TemplateButton_QuickReplyButton struct {
	QuickReplyButton *QuickReplyButton `protobuf:"bytes,1,opt,name=quickReplyButton,oneof"`
}

type TemplateButton_UrlButton struct {
	UrlButton *URLButton `protobuf:"bytes,2,opt,name=urlButton,oneof"`
}

type TemplateButton_CallButton struct {
	CallButton *CallButton `protobuf:"bytes,3,opt,name=callButton,oneof"`
}

func (*TemplateButton_QuickReplyButton) isTemplateButton_Button() {}

func (*TemplateButton_UrlButton) isTemplateButton_Button() {}

func (*TemplateButton_CallButton) isTemplateButton_Button() {}

func (m *TemplateButton) GetButton() isTemplateButton_Button {
	if m != nil {
		return m.Button
	}
	return nil
}

func (m *TemplateButton) GetQuickReplyButton() *QuickReplyButton {
	if x, ok := m.GetButton().(*TemplateButton_QuickReplyButton); ok {
		return x.QuickReplyButton
	}
	return nil
}

func (m *TemplateButton) GetUrlButton() *URLButton {
	if x, ok := m.GetButton().(*TemplateButton_UrlButton); ok {
		return x.UrlButton
	}
	return nil
}

func (m *TemplateButton) GetCallButton() *CallButton {
	if x, ok := m.GetButton().(*TemplateButton_CallButton); ok {
		return x.CallButton
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*TemplateButton) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*TemplateButton_QuickReplyButton)(nil),
		(*TemplateButton_UrlButton)(nil),
		(*TemplateButton_CallButton)(nil),
	}
}

type Location struct {
	DegreesLatitude      *float64 `protobuf:"fixed64,1,opt,name=degreesLatitude" json:"degreesLatitude,omitempty"`
	DegreesLongitude     *float64 `protobuf:"fixed64,2,opt,name=degreesLongitude" json:"degreesLongitude,omitempty"`
	Name                 *string  `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Location) Reset()         { *m = Location{} }
func (m *Location) String() string { return proto.CompactTextString(m) }
func (*Location) ProtoMessage()    {}
func (*Location) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{8}
}

func (m *Location) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Location.Unmarshal(m, b)
}
func (m *Location) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Location.Marshal(b, m, deterministic)
}
func (m *Location) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Location.Merge(m, src)
}
func (m *Location) XXX_Size() int {
	return xxx_messageInfo_Location.Size(m)
}
func (m *Location) XXX_DiscardUnknown() {
	xxx_messageInfo_Location.DiscardUnknown(m)
}

var xxx_messageInfo_Location proto.InternalMessageInfo

func (m *Location) GetDegreesLatitude() float64 {
	if m != nil && m.DegreesLatitude != nil {
		return *m.DegreesLatitude
	}
	return 0
}

func (m *Location) GetDegreesLongitude() float64 {
	if m != nil && m.DegreesLongitude != nil {
		return *m.DegreesLongitude
	}
	return 0
}

func (m *Location) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

type Point struct {
	X                    *float64 `protobuf:"fixed64,3,opt,name=x" json:"x,omitempty"`
	Y                    *float64 `protobuf:"fixed64,4,opt,name=y" json:"y,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Point) Reset()         { *m = Point{} }
func (m *Point) String() string { return proto.CompactTextString(m) }
func (*Point) ProtoMessage()    {}
func (*Point) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{9}
}

func (m *Point) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Point.Unmarshal(m, b)
}
func (m *Point) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Point.Marshal(b, m, deterministic)
}
func (m *Point) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Point.Merge(m, src)
}
func (m *Point) XXX_Size() int {
	return xxx_messageInfo_Point.Size(m)
}
func (m *Point) XXX_DiscardUnknown() {
	xxx_messageInfo_Point.DiscardUnknown(m)
}

var xxx_messageInfo_Point proto.InternalMessageInfo

func (m *Point) GetX() float64 {
	if m != nil && m.X != nil {
		return *m.X
	}
	return 0
}

func (m *Point) GetY() float64 {
	if m != nil && m.Y != nil {
		return *m.Y
	}
	return 0
}

type InteractiveAnnotation struct {
	PolygonVertices []*Point `protobuf:"bytes,1,rep,name=polygonVertices" json:"polygonVertices,omitempty"`
	// Types that are valid to be assigned to Action:
	//	*InteractiveAnnotation_Location
	Action               isInteractiveAnnotation_Action `protobuf_oneof:"action"`
	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
	XXX_unrecognized     []byte                         `json:"-"`
	XXX_sizecache        int32                          `json:"-"`
}

func (m *InteractiveAnnotation) Reset()         { *m = InteractiveAnnotation{} }
func (m *InteractiveAnnotation) String() string { return proto.CompactTextString(m) }
func (*InteractiveAnnotation) ProtoMessage()    {}
func (*InteractiveAnnotation) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{10}
}

func (m *InteractiveAnnotation) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_InteractiveAnnotation.Unmarshal(m, b)
}
func (m *InteractiveAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_InteractiveAnnotation.Marshal(b, m, deterministic)
}
func (m *InteractiveAnnotation) XXX_Merge(src proto.Message) {
	xxx_messageInfo_InteractiveAnnotation.Merge(m, src)
}
func (m *InteractiveAnnotation) XXX_Size() int {
	return xxx_messageInfo_InteractiveAnnotation.Size(m)
}
func (m *InteractiveAnnotation) XXX_DiscardUnknown() {
	xxx_messageInfo_InteractiveAnnotation.DiscardUnknown(m)
}

var xxx_messageInfo_InteractiveAnnotation proto.InternalMessageInfo

func (m *InteractiveAnnotation) GetPolygonVertices() []*Point {
	if m != nil {
		return m.PolygonVertices
	}
	return nil
}

type isInteractiveAnnotation_Action interface {
	isInteractiveAnnotation_Action()
}

type InteractiveAnnotation_Location struct {
	Location *Location `protobuf:"bytes,2,opt,name=location,oneof"`
}

func (*InteractiveAnnotation_Location) isInteractiveAnnotation_Action() {}

func (m *InteractiveAnnotation) GetAction() isInteractiveAnnotation_Action {
	if m != nil {
		return m.Action
	}
	return nil
}

func (m *InteractiveAnnotation) GetLocation() *Location {
	if x, ok := m.GetAction().(*InteractiveAnnotation_Location); ok {
		return x.Location
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*InteractiveAnnotation) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*InteractiveAnnotation_Location)(nil),
	}
}

type AdReplyInfo struct {
	AdvertiserName       *string                              `protobuf:"bytes,1,opt,name=advertiserName" json:"advertiserName,omitempty"`
	MediaType            *AdReplyInfo_AD_REPLY_INFO_MEDIATYPE `protobuf:"varint,2,opt,name=mediaType,enum=proto.AdReplyInfo_AD_REPLY_INFO_MEDIATYPE" json:"mediaType,omitempty"`
	JpegThumbnail        []byte                               `protobuf:"bytes,16,opt,name=jpegThumbnail" json:"jpegThumbnail,omitempty"`
	Caption              *string                              `protobuf:"bytes,17,opt,name=caption" json:"caption,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                             `json:"-"`
	XXX_unrecognized     []byte                               `json:"-"`
	XXX_sizecache        int32                                `json:"-"`
}

func (m *AdReplyInfo) Reset()         { *m = AdReplyInfo{} }
func (m *AdReplyInfo) String() string { return proto.CompactTextString(m) }
func (*AdReplyInfo) ProtoMessage()    {}
func (*AdReplyInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{11}
}

func (m *AdReplyInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AdReplyInfo.Unmarshal(m, b)
}
func (m *AdReplyInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AdReplyInfo.Marshal(b, m, deterministic)
}
func (m *AdReplyInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AdReplyInfo.Merge(m, src)
}
func (m *AdReplyInfo) XXX_Size() int {
	return xxx_messageInfo_AdReplyInfo.Size(m)
}
func (m *AdReplyInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_AdReplyInfo.DiscardUnknown(m)
}

var xxx_messageInfo_AdReplyInfo proto.InternalMessageInfo

func (m *AdReplyInfo) GetAdvertiserName() string {
	if m != nil && m.AdvertiserName != nil {
		return *m.AdvertiserName
	}
	return ""
}

func (m *AdReplyInfo) GetMediaType() AdReplyInfo_AD_REPLY_INFO_MEDIATYPE {
	if m != nil && m.MediaType != nil {
		return *m.MediaType
	}
	return AdReplyInfo_NONE
}

func (m *AdReplyInfo) GetJpegThumbnail() []byte {
	if m != nil {
		return m.JpegThumbnail
	}
	return nil
}

func (m *AdReplyInfo) GetCaption() string {
	if m != nil && m.Caption != nil {
		return *m.Caption
	}
	return ""
}

type ContextInfo struct {
	StanzaId               *string      `protobuf:"bytes,1,opt,name=stanzaId" json:"stanzaId,omitempty"`
	Participant            *string      `protobuf:"bytes,2,opt,name=participant" json:"participant,omitempty"`
	QuotedMessage          *Message     `protobuf:"bytes,3,opt,name=quotedMessage" json:"quotedMessage,omitempty"`
	RemoteJid              *string      `protobuf:"bytes,4,opt,name=remoteJid" json:"remoteJid,omitempty"`
	MentionedJid           []string     `protobuf:"bytes,15,rep,name=mentionedJid" json:"mentionedJid,omitempty"`
	ConversionSource       *string      `protobuf:"bytes,18,opt,name=conversionSource" json:"conversionSource,omitempty"`
	ConversionData         []byte       `protobuf:"bytes,19,opt,name=conversionData" json:"conversionData,omitempty"`
	ConversionDelaySeconds *uint32      `protobuf:"varint,20,opt,name=conversionDelaySeconds" json:"conversionDelaySeconds,omitempty"`
	ForwardingScore        *uint32      `protobuf:"varint,21,opt,name=forwardingScore" json:"forwardingScore,omitempty"`
	IsForwarded            *bool        `protobuf:"varint,22,opt,name=isForwarded" json:"isForwarded,omitempty"`
	QuotedAd               *AdReplyInfo `protobuf:"bytes,23,opt,name=quotedAd" json:"quotedAd,omitempty"`
	PlaceholderKey         *MessageKey  `protobuf:"bytes,24,opt,name=placeholderKey" json:"placeholderKey,omitempty"`
	Expiration             *uint32      `protobuf:"varint,25,opt,name=expiration" json:"expiration,omitempty"`
	XXX_NoUnkeyedLiteral   struct{}     `json:"-"`
	XXX_unrecognized       []byte       `json:"-"`
	XXX_sizecache          int32        `json:"-"`
}

func (m *ContextInfo) Reset()         { *m = ContextInfo{} }
func (m *ContextInfo) String() string { return proto.CompactTextString(m) }
func (*ContextInfo) ProtoMessage()    {}
func (*ContextInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{12}
}

func (m *ContextInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ContextInfo.Unmarshal(m, b)
}
func (m *ContextInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ContextInfo.Marshal(b, m, deterministic)
}
func (m *ContextInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ContextInfo.Merge(m, src)
}
func (m *ContextInfo) XXX_Size() int {
	return xxx_messageInfo_ContextInfo.Size(m)
}
func (m *ContextInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_ContextInfo.DiscardUnknown(m)
}

var xxx_messageInfo_ContextInfo proto.InternalMessageInfo

func (m *ContextInfo) GetStanzaId() string {
	if m != nil && m.StanzaId != nil {
		return *m.StanzaId
	}
	return ""
}

func (m *ContextInfo) GetParticipant() string {
	if m != nil && m.Participant != nil {
		return *m.Participant
	}
	return ""
}

func (m *ContextInfo) GetQuotedMessage() *Message {
	if m != nil {
		return m.QuotedMessage
	}
	return nil
}

func (m *ContextInfo) GetRemoteJid() string {
	if m != nil && m.RemoteJid != nil {
		return *m.RemoteJid
	}
	return ""
}

func (m *ContextInfo) GetMentionedJid() []string {
	if m != nil {
		return m.MentionedJid
	}
	return nil
}

func (m *ContextInfo) GetConversionSource() string {
	if m != nil && m.ConversionSource != nil {
		return *m.ConversionSource
	}
	return ""
}

func (m *ContextInfo) GetConversionData() []byte {
	if m != nil {
		return m.ConversionData
	}
	return nil
}

func (m *ContextInfo) GetConversionDelaySeconds() uint32 {
	if m != nil && m.ConversionDelaySeconds != nil {
		return *m.ConversionDelaySeconds
	}
	return 0
}

func (m *ContextInfo) GetForwardingScore() uint32 {
	if m != nil && m.ForwardingScore != nil {
		return *m.ForwardingScore
	}
	return 0
}

func (m *ContextInfo) GetIsForwarded() bool {
	if m != nil && m.IsForwarded != nil {
		return *m.IsForwarded
	}
	return false
}

func (m *ContextInfo) GetQuotedAd() *AdReplyInfo {
	if m != nil {
		return m.QuotedAd
	}
	return nil
}

func (m *ContextInfo) GetPlaceholderKey() *MessageKey {
	if m != nil {
		return m.PlaceholderKey
	}
	return nil
}

func (m *ContextInfo) GetExpiration() uint32 {
	if m != nil && m.Expiration != nil {
		return *m.Expiration
	}
	return 0
}

type SenderKeyDistributionMessage struct {
	GroupId                             *string  `protobuf:"bytes,1,opt,name=groupId" json:"groupId,omitempty"`
	AxolotlSenderKeyDistributionMessage []byte   `protobuf:"bytes,2,opt,name=axolotlSenderKeyDistributionMessage" json:"axolotlSenderKeyDistributionMessage,omitempty"`
	XXX_NoUnkeyedLiteral                struct{} `json:"-"`
	XXX_unrecognized                    []byte   `json:"-"`
	XXX_sizecache                       int32    `json:"-"`
}

func (m *SenderKeyDistributionMessage) Reset()         { *m = SenderKeyDistributionMessage{} }
func (m *SenderKeyDistributionMessage) String() string { return proto.CompactTextString(m) }
func (*SenderKeyDistributionMessage) ProtoMessage()    {}
func (*SenderKeyDistributionMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{13}
}

func (m *SenderKeyDistributionMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SenderKeyDistributionMessage.Unmarshal(m, b)
}
func (m *SenderKeyDistributionMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SenderKeyDistributionMessage.Marshal(b, m, deterministic)
}
func (m *SenderKeyDistributionMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SenderKeyDistributionMessage.Merge(m, src)
}
func (m *SenderKeyDistributionMessage) XXX_Size() int {
	return xxx_messageInfo_SenderKeyDistributionMessage.Size(m)
}
func (m *SenderKeyDistributionMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_SenderKeyDistributionMessage.DiscardUnknown(m)
}

var xxx_messageInfo_SenderKeyDistributionMessage proto.InternalMessageInfo

func (m *SenderKeyDistributionMessage) GetGroupId() string {
	if m != nil && m.GroupId != nil {
		return *m.GroupId
	}
	return ""
}

func (m *SenderKeyDistributionMessage) GetAxolotlSenderKeyDistributionMessage() []byte {
	if m != nil {
		return m.AxolotlSenderKeyDistributionMessage
	}
	return nil
}

type ImageMessage struct {
	Url                     *string                  `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
	Mimetype                *string                  `protobuf:"bytes,2,opt,name=mimetype" json:"mimetype,omitempty"`
	Caption                 *string                  `protobuf:"bytes,3,opt,name=caption" json:"caption,omitempty"`
	FileSha256              []byte                   `protobuf:"bytes,4,opt,name=fileSha256" json:"fileSha256,omitempty"`
	FileLength              *uint64                  `protobuf:"varint,5,opt,name=fileLength" json:"fileLength,omitempty"`
	Height                  *uint32                  `protobuf:"varint,6,opt,name=height" json:"height,omitempty"`
	Width                   *uint32                  `protobuf:"varint,7,opt,name=width" json:"width,omitempty"`
	MediaKey                []byte                   `protobuf:"bytes,8,opt,name=mediaKey" json:"mediaKey,omitempty"`
	FileEncSha256           []byte                   `protobuf:"bytes,9,opt,name=fileEncSha256" json:"fileEncSha256,omitempty"`
	InteractiveAnnotations  []*InteractiveAnnotation `protobuf:"bytes,10,rep,name=interactiveAnnotations" json:"interactiveAnnotations,omitempty"`
	DirectPath              *string                  `protobuf:"bytes,11,opt,name=directPath" json:"directPath,omitempty"`
	MediaKeyTimestamp       *int64                   `protobuf:"varint,12,opt,name=mediaKeyTimestamp" json:"mediaKeyTimestamp,omitempty"`
	JpegThumbnail           []byte                   `protobuf:"bytes,16,opt,name=jpegThumbnail" json:"jpegThumbnail,omitempty"`
	ContextInfo             *ContextInfo             `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	FirstScanSidecar        []byte                   `protobuf:"bytes,18,opt,name=firstScanSidecar" json:"firstScanSidecar,omitempty"`
	FirstScanLength         *uint32                  `protobuf:"varint,19,opt,name=firstScanLength" json:"firstScanLength,omitempty"`
	ExperimentGroupId       *uint32                  `protobuf:"varint,20,opt,name=experimentGroupId" json:"experimentGroupId,omitempty"`
	ScansSidecar            []byte                   `protobuf:"bytes,21,opt,name=scansSidecar" json:"scansSidecar,omitempty"`
	ScanLengths             []uint32                 `protobuf:"varint,22,rep,name=scanLengths" json:"scanLengths,omitempty"`
	MidQualityFileSha256    []byte                   `protobuf:"bytes,23,opt,name=midQualityFileSha256" json:"midQualityFileSha256,omitempty"`
	MidQualityFileEncSha256 []byte                   `protobuf:"bytes,24,opt,name=midQualityFileEncSha256" json:"midQualityFileEncSha256,omitempty"`
	XXX_NoUnkeyedLiteral    struct{}                 `json:"-"`
	XXX_unrecognized        []byte                   `json:"-"`
	XXX_sizecache           int32                    `json:"-"`
}

func (m *ImageMessage) Reset()         { *m = ImageMessage{} }
func (m *ImageMessage) String() string { return proto.CompactTextString(m) }
func (*ImageMessage) ProtoMessage()    {}
func (*ImageMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{14}
}

func (m *ImageMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ImageMessage.Unmarshal(m, b)
}
func (m *ImageMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ImageMessage.Marshal(b, m, deterministic)
}
func (m *ImageMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ImageMessage.Merge(m, src)
}
func (m *ImageMessage) XXX_Size() int {
	return xxx_messageInfo_ImageMessage.Size(m)
}
func (m *ImageMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_ImageMessage.DiscardUnknown(m)
}

var xxx_messageInfo_ImageMessage proto.InternalMessageInfo

func (m *ImageMessage) GetUrl() string {
	if m != nil && m.Url != nil {
		return *m.Url
	}
	return ""
}

func (m *ImageMessage) GetMimetype() string {
	if m != nil && m.Mimetype != nil {
		return *m.Mimetype
	}
	return ""
}

func (m *ImageMessage) GetCaption() string {
	if m != nil && m.Caption != nil {
		return *m.Caption
	}
	return ""
}

func (m *ImageMessage) GetFileSha256() []byte {
	if m != nil {
		return m.FileSha256
	}
	return nil
}

func (m *ImageMessage) GetFileLength() uint64 {
	if m != nil && m.FileLength != nil {
		return *m.FileLength
	}
	return 0
}

func (m *ImageMessage) GetHeight() uint32 {
	if m != nil && m.Height != nil {
		return *m.Height
	}
	return 0
}

func (m *ImageMessage) GetWidth() uint32 {
	if m != nil && m.Width != nil {
		return *m.Width
	}
	return 0
}

func (m *ImageMessage) GetMediaKey() []byte {
	if m != nil {
		return m.MediaKey
	}
	return nil
}

func (m *ImageMessage) GetFileEncSha256() []byte {
	if m != nil {
		return m.FileEncSha256
	}
	return nil
}

func (m *ImageMessage) GetInteractiveAnnotations() []*InteractiveAnnotation {
	if m != nil {
		return m.InteractiveAnnotations
	}
	return nil
}

func (m *ImageMessage) GetDirectPath() string {
	if m != nil && m.DirectPath != nil {
		return *m.DirectPath
	}
	return ""
}

func (m *ImageMessage) GetMediaKeyTimestamp() int64 {
	if m != nil && m.MediaKeyTimestamp != nil {
		return *m.MediaKeyTimestamp
	}
	return 0
}

func (m *ImageMessage) GetJpegThumbnail() []byte {
	if m != nil {
		return m.JpegThumbnail
	}
	return nil
}

func (m *ImageMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

func (m *ImageMessage) GetFirstScanSidecar() []byte {
	if m != nil {
		return m.FirstScanSidecar
	}
	return nil
}

func (m *ImageMessage) GetFirstScanLength() uint32 {
	if m != nil && m.FirstScanLength != nil {
		return *m.FirstScanLength
	}
	return 0
}

func (m *ImageMessage) GetExperimentGroupId() uint32 {
	if m != nil && m.ExperimentGroupId != nil {
		return *m.ExperimentGroupId
	}
	return 0
}

func (m *ImageMessage) GetScansSidecar() []byte {
	if m != nil {
		return m.ScansSidecar
	}
	return nil
}

func (m *ImageMessage) GetScanLengths() []uint32 {
	if m != nil {
		return m.ScanLengths
	}
	return nil
}

func (m *ImageMessage) GetMidQualityFileSha256() []byte {
	if m != nil {
		return m.MidQualityFileSha256
	}
	return nil
}

func (m *ImageMessage) GetMidQualityFileEncSha256() []byte {
	if m != nil {
		return m.MidQualityFileEncSha256
	}
	return nil
}

type ContactMessage struct {
	DisplayName          *string      `protobuf:"bytes,1,opt,name=displayName" json:"displayName,omitempty"`
	Vcard                *string      `protobuf:"bytes,16,opt,name=vcard" json:"vcard,omitempty"`
	ContextInfo          *ContextInfo `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *ContactMessage) Reset()         { *m = ContactMessage{} }
func (m *ContactMessage) String() string { return proto.CompactTextString(m) }
func (*ContactMessage) ProtoMessage()    {}
func (*ContactMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{15}
}

func (m *ContactMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ContactMessage.Unmarshal(m, b)
}
func (m *ContactMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ContactMessage.Marshal(b, m, deterministic)
}
func (m *ContactMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ContactMessage.Merge(m, src)
}
func (m *ContactMessage) XXX_Size() int {
	return xxx_messageInfo_ContactMessage.Size(m)
}
func (m *ContactMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_ContactMessage.DiscardUnknown(m)
}

var xxx_messageInfo_ContactMessage proto.InternalMessageInfo

func (m *ContactMessage) GetDisplayName() string {
	if m != nil && m.DisplayName != nil {
		return *m.DisplayName
	}
	return ""
}

func (m *ContactMessage) GetVcard() string {
	if m != nil && m.Vcard != nil {
		return *m.Vcard
	}
	return ""
}

func (m *ContactMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

type LocationMessage struct {
	DegreesLatitude      *float64     `protobuf:"fixed64,1,opt,name=degreesLatitude" json:"degreesLatitude,omitempty"`
	DegreesLongitude     *float64     `protobuf:"fixed64,2,opt,name=degreesLongitude" json:"degreesLongitude,omitempty"`
	Name                 *string      `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"`
	Address              *string      `protobuf:"bytes,4,opt,name=address" json:"address,omitempty"`
	Url                  *string      `protobuf:"bytes,5,opt,name=url" json:"url,omitempty"`
	JpegThumbnail        []byte       `protobuf:"bytes,16,opt,name=jpegThumbnail" json:"jpegThumbnail,omitempty"`
	ContextInfo          *ContextInfo `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *LocationMessage) Reset()         { *m = LocationMessage{} }
func (m *LocationMessage) String() string { return proto.CompactTextString(m) }
func (*LocationMessage) ProtoMessage()    {}
func (*LocationMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{16}
}

func (m *LocationMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LocationMessage.Unmarshal(m, b)
}
func (m *LocationMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LocationMessage.Marshal(b, m, deterministic)
}
func (m *LocationMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LocationMessage.Merge(m, src)
}
func (m *LocationMessage) XXX_Size() int {
	return xxx_messageInfo_LocationMessage.Size(m)
}
func (m *LocationMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_LocationMessage.DiscardUnknown(m)
}

var xxx_messageInfo_LocationMessage proto.InternalMessageInfo

func (m *LocationMessage) GetDegreesLatitude() float64 {
	if m != nil && m.DegreesLatitude != nil {
		return *m.DegreesLatitude
	}
	return 0
}

func (m *LocationMessage) GetDegreesLongitude() float64 {
	if m != nil && m.DegreesLongitude != nil {
		return *m.DegreesLongitude
	}
	return 0
}

func (m *LocationMessage) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *LocationMessage) GetAddress() string {
	if m != nil && m.Address != nil {
		return *m.Address
	}
	return ""
}

func (m *LocationMessage) GetUrl() string {
	if m != nil && m.Url != nil {
		return *m.Url
	}
	return ""
}

func (m *LocationMessage) GetJpegThumbnail() []byte {
	if m != nil {
		return m.JpegThumbnail
	}
	return nil
}

func (m *LocationMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

type ExtendedTextMessage struct {
	Text                 *string                                                `protobuf:"bytes,1,opt,name=text" json:"text,omitempty"`
	MatchedText          *string                                                `protobuf:"bytes,2,opt,name=matchedText" json:"matchedText,omitempty"`
	CanonicalUrl         *string                                                `protobuf:"bytes,4,opt,name=canonicalUrl" json:"canonicalUrl,omitempty"`
	Description          *string                                                `protobuf:"bytes,5,opt,name=description" json:"description,omitempty"`
	Title                *string                                                `protobuf:"bytes,6,opt,name=title" json:"title,omitempty"`
	TextArgb             *uint32                                                `protobuf:"fixed32,7,opt,name=textArgb" json:"textArgb,omitempty"`
	BackgroundArgb       *uint32                                                `protobuf:"fixed32,8,opt,name=backgroundArgb" json:"backgroundArgb,omitempty"`
	Font                 *ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE    `protobuf:"varint,9,opt,name=font,enum=proto.ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE" json:"font,omitempty"`
	PreviewType          *ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE `protobuf:"varint,10,opt,name=previewType,enum=proto.ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE" json:"previewType,omitempty"`
	JpegThumbnail        []byte                                                 `protobuf:"bytes,16,opt,name=jpegThumbnail" json:"jpegThumbnail,omitempty"`
	ContextInfo          *ContextInfo                                           `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	DoNotPlayInline      *bool                                                  `protobuf:"varint,18,opt,name=doNotPlayInline" json:"doNotPlayInline,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                               `json:"-"`
	XXX_unrecognized     []byte                                                 `json:"-"`
	XXX_sizecache        int32                                                  `json:"-"`
}

func (m *ExtendedTextMessage) Reset()         { *m = ExtendedTextMessage{} }
func (m *ExtendedTextMessage) String() string { return proto.CompactTextString(m) }
func (*ExtendedTextMessage) ProtoMessage()    {}
func (*ExtendedTextMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{17}
}

func (m *ExtendedTextMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ExtendedTextMessage.Unmarshal(m, b)
}
func (m *ExtendedTextMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ExtendedTextMessage.Marshal(b, m, deterministic)
}
func (m *ExtendedTextMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ExtendedTextMessage.Merge(m, src)
}
func (m *ExtendedTextMessage) XXX_Size() int {
	return xxx_messageInfo_ExtendedTextMessage.Size(m)
}
func (m *ExtendedTextMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_ExtendedTextMessage.DiscardUnknown(m)
}

var xxx_messageInfo_ExtendedTextMessage proto.InternalMessageInfo

func (m *ExtendedTextMessage) GetText() string {
	if m != nil && m.Text != nil {
		return *m.Text
	}
	return ""
}

func (m *ExtendedTextMessage) GetMatchedText() string {
	if m != nil && m.MatchedText != nil {
		return *m.MatchedText
	}
	return ""
}

func (m *ExtendedTextMessage) GetCanonicalUrl() string {
	if m != nil && m.CanonicalUrl != nil {
		return *m.CanonicalUrl
	}
	return ""
}

func (m *ExtendedTextMessage) GetDescription() string {
	if m != nil && m.Description != nil {
		return *m.Description
	}
	return ""
}

func (m *ExtendedTextMessage) GetTitle() string {
	if m != nil && m.Title != nil {
		return *m.Title
	}
	return ""
}

func (m *ExtendedTextMessage) GetTextArgb() uint32 {
	if m != nil && m.TextArgb != nil {
		return *m.TextArgb
	}
	return 0
}

func (m *ExtendedTextMessage) GetBackgroundArgb() uint32 {
	if m != nil && m.BackgroundArgb != nil {
		return *m.BackgroundArgb
	}
	return 0
}

func (m *ExtendedTextMessage) GetFont() ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE {
	if m != nil && m.Font != nil {
		return *m.Font
	}
	return ExtendedTextMessage_SANS_SERIF
}

func (m *ExtendedTextMessage) GetPreviewType() ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE {
	if m != nil && m.PreviewType != nil {
		return *m.PreviewType
	}
	return ExtendedTextMessage_NONE
}

func (m *ExtendedTextMessage) GetJpegThumbnail() []byte {
	if m != nil {
		return m.JpegThumbnail
	}
	return nil
}

func (m *ExtendedTextMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

func (m *ExtendedTextMessage) GetDoNotPlayInline() bool {
	if m != nil && m.DoNotPlayInline != nil {
		return *m.DoNotPlayInline
	}
	return false
}

type DocumentMessage struct {
	Url                  *string      `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
	Mimetype             *string      `protobuf:"bytes,2,opt,name=mimetype" json:"mimetype,omitempty"`
	Title                *string      `protobuf:"bytes,3,opt,name=title" json:"title,omitempty"`
	FileSha256           []byte       `protobuf:"bytes,4,opt,name=fileSha256" json:"fileSha256,omitempty"`
	FileLength           *uint64      `protobuf:"varint,5,opt,name=fileLength" json:"fileLength,omitempty"`
	PageCount            *uint32      `protobuf:"varint,6,opt,name=pageCount" json:"pageCount,omitempty"`
	MediaKey             []byte       `protobuf:"bytes,7,opt,name=mediaKey" json:"mediaKey,omitempty"`
	FileName             *string      `protobuf:"bytes,8,opt,name=fileName" json:"fileName,omitempty"`
	FileEncSha256        []byte       `protobuf:"bytes,9,opt,name=fileEncSha256" json:"fileEncSha256,omitempty"`
	DirectPath           *string      `protobuf:"bytes,10,opt,name=directPath" json:"directPath,omitempty"`
	MediaKeyTimestamp    *int64       `protobuf:"varint,11,opt,name=mediaKeyTimestamp" json:"mediaKeyTimestamp,omitempty"`
	JpegThumbnail        []byte       `protobuf:"bytes,16,opt,name=jpegThumbnail" json:"jpegThumbnail,omitempty"`
	ContextInfo          *ContextInfo `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *DocumentMessage) Reset()         { *m = DocumentMessage{} }
func (m *DocumentMessage) String() string { return proto.CompactTextString(m) }
func (*DocumentMessage) ProtoMessage()    {}
func (*DocumentMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{18}
}

func (m *DocumentMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DocumentMessage.Unmarshal(m, b)
}
func (m *DocumentMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DocumentMessage.Marshal(b, m, deterministic)
}
func (m *DocumentMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DocumentMessage.Merge(m, src)
}
func (m *DocumentMessage) XXX_Size() int {
	return xxx_messageInfo_DocumentMessage.Size(m)
}
func (m *DocumentMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_DocumentMessage.DiscardUnknown(m)
}

var xxx_messageInfo_DocumentMessage proto.InternalMessageInfo

func (m *DocumentMessage) GetUrl() string {
	if m != nil && m.Url != nil {
		return *m.Url
	}
	return ""
}

func (m *DocumentMessage) GetMimetype() string {
	if m != nil && m.Mimetype != nil {
		return *m.Mimetype
	}
	return ""
}

func (m *DocumentMessage) GetTitle() string {
	if m != nil && m.Title != nil {
		return *m.Title
	}
	return ""
}

func (m *DocumentMessage) GetFileSha256() []byte {
	if m != nil {
		return m.FileSha256
	}
	return nil
}

func (m *DocumentMessage) GetFileLength() uint64 {
	if m != nil && m.FileLength != nil {
		return *m.FileLength
	}
	return 0
}

func (m *DocumentMessage) GetPageCount() uint32 {
	if m != nil && m.PageCount != nil {
		return *m.PageCount
	}
	return 0
}

func (m *DocumentMessage) GetMediaKey() []byte {
	if m != nil {
		return m.MediaKey
	}
	return nil
}

func (m *DocumentMessage) GetFileName() string {
	if m != nil && m.FileName != nil {
		return *m.FileName
	}
	return ""
}

func (m *DocumentMessage) GetFileEncSha256() []byte {
	if m != nil {
		return m.FileEncSha256
	}
	return nil
}

func (m *DocumentMessage) GetDirectPath() string {
	if m != nil && m.DirectPath != nil {
		return *m.DirectPath
	}
	return ""
}

func (m *DocumentMessage) GetMediaKeyTimestamp() int64 {
	if m != nil && m.MediaKeyTimestamp != nil {
		return *m.MediaKeyTimestamp
	}
	return 0
}

func (m *DocumentMessage) GetJpegThumbnail() []byte {
	if m != nil {
		return m.JpegThumbnail
	}
	return nil
}

func (m *DocumentMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

type AudioMessage struct {
	Url                  *string      `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
	Mimetype             *string      `protobuf:"bytes,2,opt,name=mimetype" json:"mimetype,omitempty"`
	FileSha256           []byte       `protobuf:"bytes,3,opt,name=fileSha256" json:"fileSha256,omitempty"`
	FileLength           *uint64      `protobuf:"varint,4,opt,name=fileLength" json:"fileLength,omitempty"`
	Seconds              *uint32      `protobuf:"varint,5,opt,name=seconds" json:"seconds,omitempty"`
	Ptt                  *bool        `protobuf:"varint,6,opt,name=ptt" json:"ptt,omitempty"`
	MediaKey             []byte       `protobuf:"bytes,7,opt,name=mediaKey" json:"mediaKey,omitempty"`
	FileEncSha256        []byte       `protobuf:"bytes,8,opt,name=fileEncSha256" json:"fileEncSha256,omitempty"`
	DirectPath           *string      `protobuf:"bytes,9,opt,name=directPath" json:"directPath,omitempty"`
	MediaKeyTimestamp    *int64       `protobuf:"varint,10,opt,name=mediaKeyTimestamp" json:"mediaKeyTimestamp,omitempty"`
	ContextInfo          *ContextInfo `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	StreamingSidecar     []byte       `protobuf:"bytes,18,opt,name=streamingSidecar" json:"streamingSidecar,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *AudioMessage) Reset()         { *m = AudioMessage{} }
func (m *AudioMessage) String() string { return proto.CompactTextString(m) }
func (*AudioMessage) ProtoMessage()    {}
func (*AudioMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{19}
}

func (m *AudioMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AudioMessage.Unmarshal(m, b)
}
func (m *AudioMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AudioMessage.Marshal(b, m, deterministic)
}
func (m *AudioMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AudioMessage.Merge(m, src)
}
func (m *AudioMessage) XXX_Size() int {
	return xxx_messageInfo_AudioMessage.Size(m)
}
func (m *AudioMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_AudioMessage.DiscardUnknown(m)
}

var xxx_messageInfo_AudioMessage proto.InternalMessageInfo

func (m *AudioMessage) GetUrl() string {
	if m != nil && m.Url != nil {
		return *m.Url
	}
	return ""
}

func (m *AudioMessage) GetMimetype() string {
	if m != nil && m.Mimetype != nil {
		return *m.Mimetype
	}
	return ""
}

func (m *AudioMessage) GetFileSha256() []byte {
	if m != nil {
		return m.FileSha256
	}
	return nil
}

func (m *AudioMessage) GetFileLength() uint64 {
	if m != nil && m.FileLength != nil {
		return *m.FileLength
	}
	return 0
}

func (m *AudioMessage) GetSeconds() uint32 {
	if m != nil && m.Seconds != nil {
		return *m.Seconds
	}
	return 0
}

func (m *AudioMessage) GetPtt() bool {
	if m != nil && m.Ptt != nil {
		return *m.Ptt
	}
	return false
}

func (m *AudioMessage) GetMediaKey() []byte {
	if m != nil {
		return m.MediaKey
	}
	return nil
}

func (m *AudioMessage) GetFileEncSha256() []byte {
	if m != nil {
		return m.FileEncSha256
	}
	return nil
}

func (m *AudioMessage) GetDirectPath() string {
	if m != nil && m.DirectPath != nil {
		return *m.DirectPath
	}
	return ""
}

func (m *AudioMessage) GetMediaKeyTimestamp() int64 {
	if m != nil && m.MediaKeyTimestamp != nil {
		return *m.MediaKeyTimestamp
	}
	return 0
}

func (m *AudioMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

func (m *AudioMessage) GetStreamingSidecar() []byte {
	if m != nil {
		return m.StreamingSidecar
	}
	return nil
}

type VideoMessage struct {
	Url                    *string                                 `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
	Mimetype               *string                                 `protobuf:"bytes,2,opt,name=mimetype" json:"mimetype,omitempty"`
	FileSha256             []byte                                  `protobuf:"bytes,3,opt,name=fileSha256" json:"fileSha256,omitempty"`
	FileLength             *uint64                                 `protobuf:"varint,4,opt,name=fileLength" json:"fileLength,omitempty"`
	Seconds                *uint32                                 `protobuf:"varint,5,opt,name=seconds" json:"seconds,omitempty"`
	MediaKey               []byte                                  `protobuf:"bytes,6,opt,name=mediaKey" json:"mediaKey,omitempty"`
	Caption                *string                                 `protobuf:"bytes,7,opt,name=caption" json:"caption,omitempty"`
	GifPlayback            *bool                                   `protobuf:"varint,8,opt,name=gifPlayback" json:"gifPlayback,omitempty"`
	Height                 *uint32                                 `protobuf:"varint,9,opt,name=height" json:"height,omitempty"`
	Width                  *uint32                                 `protobuf:"varint,10,opt,name=width" json:"width,omitempty"`
	FileEncSha256          []byte                                  `protobuf:"bytes,11,opt,name=fileEncSha256" json:"fileEncSha256,omitempty"`
	InteractiveAnnotations []*InteractiveAnnotation                `protobuf:"bytes,12,rep,name=interactiveAnnotations" json:"interactiveAnnotations,omitempty"`
	DirectPath             *string                                 `protobuf:"bytes,13,opt,name=directPath" json:"directPath,omitempty"`
	MediaKeyTimestamp      *int64                                  `protobuf:"varint,14,opt,name=mediaKeyTimestamp" json:"mediaKeyTimestamp,omitempty"`
	JpegThumbnail          []byte                                  `protobuf:"bytes,16,opt,name=jpegThumbnail" json:"jpegThumbnail,omitempty"`
	ContextInfo            *ContextInfo                            `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	StreamingSidecar       []byte                                  `protobuf:"bytes,18,opt,name=streamingSidecar" json:"streamingSidecar,omitempty"`
	GifAttribution         *VideoMessage_VIDEO_MESSAGE_ATTRIBUTION `protobuf:"varint,19,opt,name=gifAttribution,enum=proto.VideoMessage_VIDEO_MESSAGE_ATTRIBUTION" json:"gifAttribution,omitempty"`
	XXX_NoUnkeyedLiteral   struct{}                                `json:"-"`
	XXX_unrecognized       []byte                                  `json:"-"`
	XXX_sizecache          int32                                   `json:"-"`
}

func (m *VideoMessage) Reset()         { *m = VideoMessage{} }
func (m *VideoMessage) String() string { return proto.CompactTextString(m) }
func (*VideoMessage) ProtoMessage()    {}
func (*VideoMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{20}
}

func (m *VideoMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_VideoMessage.Unmarshal(m, b)
}
func (m *VideoMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_VideoMessage.Marshal(b, m, deterministic)
}
func (m *VideoMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_VideoMessage.Merge(m, src)
}
func (m *VideoMessage) XXX_Size() int {
	return xxx_messageInfo_VideoMessage.Size(m)
}
func (m *VideoMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_VideoMessage.DiscardUnknown(m)
}

var xxx_messageInfo_VideoMessage proto.InternalMessageInfo

func (m *VideoMessage) GetUrl() string {
	if m != nil && m.Url != nil {
		return *m.Url
	}
	return ""
}

func (m *VideoMessage) GetMimetype() string {
	if m != nil && m.Mimetype != nil {
		return *m.Mimetype
	}
	return ""
}

func (m *VideoMessage) GetFileSha256() []byte {
	if m != nil {
		return m.FileSha256
	}
	return nil
}

func (m *VideoMessage) GetFileLength() uint64 {
	if m != nil && m.FileLength != nil {
		return *m.FileLength
	}
	return 0
}

func (m *VideoMessage) GetSeconds() uint32 {
	if m != nil && m.Seconds != nil {
		return *m.Seconds
	}
	return 0
}

func (m *VideoMessage) GetMediaKey() []byte {
	if m != nil {
		return m.MediaKey
	}
	return nil
}

func (m *VideoMessage) GetCaption() string {
	if m != nil && m.Caption != nil {
		return *m.Caption
	}
	return ""
}

func (m *VideoMessage) GetGifPlayback() bool {
	if m != nil && m.GifPlayback != nil {
		return *m.GifPlayback
	}
	return false
}

func (m *VideoMessage) GetHeight() uint32 {
	if m != nil && m.Height != nil {
		return *m.Height
	}
	return 0
}

func (m *VideoMessage) GetWidth() uint32 {
	if m != nil && m.Width != nil {
		return *m.Width
	}
	return 0
}

func (m *VideoMessage) GetFileEncSha256() []byte {
	if m != nil {
		return m.FileEncSha256
	}
	return nil
}

func (m *VideoMessage) GetInteractiveAnnotations() []*InteractiveAnnotation {
	if m != nil {
		return m.InteractiveAnnotations
	}
	return nil
}

func (m *VideoMessage) GetDirectPath() string {
	if m != nil && m.DirectPath != nil {
		return *m.DirectPath
	}
	return ""
}

func (m *VideoMessage) GetMediaKeyTimestamp() int64 {
	if m != nil && m.MediaKeyTimestamp != nil {
		return *m.MediaKeyTimestamp
	}
	return 0
}

func (m *VideoMessage) GetJpegThumbnail() []byte {
	if m != nil {
		return m.JpegThumbnail
	}
	return nil
}

func (m *VideoMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

func (m *VideoMessage) GetStreamingSidecar() []byte {
	if m != nil {
		return m.StreamingSidecar
	}
	return nil
}

func (m *VideoMessage) GetGifAttribution() VideoMessage_VIDEO_MESSAGE_ATTRIBUTION {
	if m != nil && m.GifAttribution != nil {
		return *m.GifAttribution
	}
	return VideoMessage_NONE
}

type Call struct {
	CallKey              []byte   `protobuf:"bytes,1,opt,name=callKey" json:"callKey,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Call) Reset()         { *m = Call{} }
func (m *Call) String() string { return proto.CompactTextString(m) }
func (*Call) ProtoMessage()    {}
func (*Call) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{21}
}

func (m *Call) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Call.Unmarshal(m, b)
}
func (m *Call) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Call.Marshal(b, m, deterministic)
}
func (m *Call) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Call.Merge(m, src)
}
func (m *Call) XXX_Size() int {
	return xxx_messageInfo_Call.Size(m)
}
func (m *Call) XXX_DiscardUnknown() {
	xxx_messageInfo_Call.DiscardUnknown(m)
}

var xxx_messageInfo_Call proto.InternalMessageInfo

func (m *Call) GetCallKey() []byte {
	if m != nil {
		return m.CallKey
	}
	return nil
}

type Chat struct {
	DisplayName          *string  `protobuf:"bytes,1,opt,name=displayName" json:"displayName,omitempty"`
	Id                   *string  `protobuf:"bytes,2,opt,name=id" json:"id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Chat) Reset()         { *m = Chat{} }
func (m *Chat) String() string { return proto.CompactTextString(m) }
func (*Chat) ProtoMessage()    {}
func (*Chat) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{22}
}

func (m *Chat) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Chat.Unmarshal(m, b)
}
func (m *Chat) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Chat.Marshal(b, m, deterministic)
}
func (m *Chat) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Chat.Merge(m, src)
}
func (m *Chat) XXX_Size() int {
	return xxx_messageInfo_Chat.Size(m)
}
func (m *Chat) XXX_DiscardUnknown() {
	xxx_messageInfo_Chat.DiscardUnknown(m)
}

var xxx_messageInfo_Chat proto.InternalMessageInfo

func (m *Chat) GetDisplayName() string {
	if m != nil && m.DisplayName != nil {
		return *m.DisplayName
	}
	return ""
}

func (m *Chat) GetId() string {
	if m != nil && m.Id != nil {
		return *m.Id
	}
	return ""
}

type ProtocolMessage struct {
	Key                  *MessageKey                            `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
	Type                 *ProtocolMessage_PROTOCOL_MESSAGE_TYPE `protobuf:"varint,2,opt,name=type,enum=proto.ProtocolMessage_PROTOCOL_MESSAGE_TYPE" json:"type,omitempty"`
	EphemeralExpiration  *uint32                                `protobuf:"varint,4,opt,name=ephemeralExpiration" json:"ephemeralExpiration,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                               `json:"-"`
	XXX_unrecognized     []byte                                 `json:"-"`
	XXX_sizecache        int32                                  `json:"-"`
}

func (m *ProtocolMessage) Reset()         { *m = ProtocolMessage{} }
func (m *ProtocolMessage) String() string { return proto.CompactTextString(m) }
func (*ProtocolMessage) ProtoMessage()    {}
func (*ProtocolMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{23}
}

func (m *ProtocolMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ProtocolMessage.Unmarshal(m, b)
}
func (m *ProtocolMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ProtocolMessage.Marshal(b, m, deterministic)
}
func (m *ProtocolMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ProtocolMessage.Merge(m, src)
}
func (m *ProtocolMessage) XXX_Size() int {
	return xxx_messageInfo_ProtocolMessage.Size(m)
}
func (m *ProtocolMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_ProtocolMessage.DiscardUnknown(m)
}

var xxx_messageInfo_ProtocolMessage proto.InternalMessageInfo

func (m *ProtocolMessage) GetKey() *MessageKey {
	if m != nil {
		return m.Key
	}
	return nil
}

func (m *ProtocolMessage) GetType() ProtocolMessage_PROTOCOL_MESSAGE_TYPE {
	if m != nil && m.Type != nil {
		return *m.Type
	}
	return ProtocolMessage_REVOKE
}

func (m *ProtocolMessage) GetEphemeralExpiration() uint32 {
	if m != nil && m.EphemeralExpiration != nil {
		return *m.EphemeralExpiration
	}
	return 0
}

type ContactsArrayMessage struct {
	DisplayName          *string           `protobuf:"bytes,1,opt,name=displayName" json:"displayName,omitempty"`
	Contacts             []*ContactMessage `protobuf:"bytes,2,rep,name=contacts" json:"contacts,omitempty"`
	ContextInfo          *ContextInfo      `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *ContactsArrayMessage) Reset()         { *m = ContactsArrayMessage{} }
func (m *ContactsArrayMessage) String() string { return proto.CompactTextString(m) }
func (*ContactsArrayMessage) ProtoMessage()    {}
func (*ContactsArrayMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{24}
}

func (m *ContactsArrayMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ContactsArrayMessage.Unmarshal(m, b)
}
func (m *ContactsArrayMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ContactsArrayMessage.Marshal(b, m, deterministic)
}
func (m *ContactsArrayMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ContactsArrayMessage.Merge(m, src)
}
func (m *ContactsArrayMessage) XXX_Size() int {
	return xxx_messageInfo_ContactsArrayMessage.Size(m)
}
func (m *ContactsArrayMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_ContactsArrayMessage.DiscardUnknown(m)
}

var xxx_messageInfo_ContactsArrayMessage proto.InternalMessageInfo

func (m *ContactsArrayMessage) GetDisplayName() string {
	if m != nil && m.DisplayName != nil {
		return *m.DisplayName
	}
	return ""
}

func (m *ContactsArrayMessage) GetContacts() []*ContactMessage {
	if m != nil {
		return m.Contacts
	}
	return nil
}

func (m *ContactsArrayMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

type HSMCurrency struct {
	CurrencyCode         *string  `protobuf:"bytes,1,opt,name=currencyCode" json:"currencyCode,omitempty"`
	Amount1000           *int64   `protobuf:"varint,2,opt,name=amount1000" json:"amount1000,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *HSMCurrency) Reset()         { *m = HSMCurrency{} }
func (m *HSMCurrency) String() string { return proto.CompactTextString(m) }
func (*HSMCurrency) ProtoMessage()    {}
func (*HSMCurrency) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{25}
}

func (m *HSMCurrency) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HSMCurrency.Unmarshal(m, b)
}
func (m *HSMCurrency) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HSMCurrency.Marshal(b, m, deterministic)
}
func (m *HSMCurrency) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HSMCurrency.Merge(m, src)
}
func (m *HSMCurrency) XXX_Size() int {
	return xxx_messageInfo_HSMCurrency.Size(m)
}
func (m *HSMCurrency) XXX_DiscardUnknown() {
	xxx_messageInfo_HSMCurrency.DiscardUnknown(m)
}

var xxx_messageInfo_HSMCurrency proto.InternalMessageInfo

func (m *HSMCurrency) GetCurrencyCode() string {
	if m != nil && m.CurrencyCode != nil {
		return *m.CurrencyCode
	}
	return ""
}

func (m *HSMCurrency) GetAmount1000() int64 {
	if m != nil && m.Amount1000 != nil {
		return *m.Amount1000
	}
	return 0
}

type HSMDateTimeComponent struct {
	DayOfWeek            *HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE `protobuf:"varint,1,opt,name=dayOfWeek,enum=proto.HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE" json:"dayOfWeek,omitempty"`
	Year                 *uint32                                                     `protobuf:"varint,2,opt,name=year" json:"year,omitempty"`
	Month                *uint32                                                     `protobuf:"varint,3,opt,name=month" json:"month,omitempty"`
	DayOfMonth           *uint32                                                     `protobuf:"varint,4,opt,name=dayOfMonth" json:"dayOfMonth,omitempty"`
	Hour                 *uint32                                                     `protobuf:"varint,5,opt,name=hour" json:"hour,omitempty"`
	Minute               *uint32                                                     `protobuf:"varint,6,opt,name=minute" json:"minute,omitempty"`
	Calendar             *HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE  `protobuf:"varint,7,opt,name=calendar,enum=proto.HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE" json:"calendar,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                                    `json:"-"`
	XXX_unrecognized     []byte                                                      `json:"-"`
	XXX_sizecache        int32                                                       `json:"-"`
}

func (m *HSMDateTimeComponent) Reset()         { *m = HSMDateTimeComponent{} }
func (m *HSMDateTimeComponent) String() string { return proto.CompactTextString(m) }
func (*HSMDateTimeComponent) ProtoMessage()    {}
func (*HSMDateTimeComponent) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{26}
}

func (m *HSMDateTimeComponent) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HSMDateTimeComponent.Unmarshal(m, b)
}
func (m *HSMDateTimeComponent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HSMDateTimeComponent.Marshal(b, m, deterministic)
}
func (m *HSMDateTimeComponent) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HSMDateTimeComponent.Merge(m, src)
}
func (m *HSMDateTimeComponent) XXX_Size() int {
	return xxx_messageInfo_HSMDateTimeComponent.Size(m)
}
func (m *HSMDateTimeComponent) XXX_DiscardUnknown() {
	xxx_messageInfo_HSMDateTimeComponent.DiscardUnknown(m)
}

var xxx_messageInfo_HSMDateTimeComponent proto.InternalMessageInfo

func (m *HSMDateTimeComponent) GetDayOfWeek() HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE {
	if m != nil && m.DayOfWeek != nil {
		return *m.DayOfWeek
	}
	return HSMDateTimeComponent_MONDAY
}

func (m *HSMDateTimeComponent) GetYear() uint32 {
	if m != nil && m.Year != nil {
		return *m.Year
	}
	return 0
}

func (m *HSMDateTimeComponent) GetMonth() uint32 {
	if m != nil && m.Month != nil {
		return *m.Month
	}
	return 0
}

func (m *HSMDateTimeComponent) GetDayOfMonth() uint32 {
	if m != nil && m.DayOfMonth != nil {
		return *m.DayOfMonth
	}
	return 0
}

func (m *HSMDateTimeComponent) GetHour() uint32 {
	if m != nil && m.Hour != nil {
		return *m.Hour
	}
	return 0
}

func (m *HSMDateTimeComponent) GetMinute() uint32 {
	if m != nil && m.Minute != nil {
		return *m.Minute
	}
	return 0
}

func (m *HSMDateTimeComponent) GetCalendar() HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE {
	if m != nil && m.Calendar != nil {
		return *m.Calendar
	}
	return HSMDateTimeComponent_GREGORIAN
}

type HSMDateTimeUnixEpoch struct {
	Timestamp            *int64   `protobuf:"varint,1,opt,name=timestamp" json:"timestamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *HSMDateTimeUnixEpoch) Reset()         { *m = HSMDateTimeUnixEpoch{} }
func (m *HSMDateTimeUnixEpoch) String() string { return proto.CompactTextString(m) }
func (*HSMDateTimeUnixEpoch) ProtoMessage()    {}
func (*HSMDateTimeUnixEpoch) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{27}
}

func (m *HSMDateTimeUnixEpoch) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HSMDateTimeUnixEpoch.Unmarshal(m, b)
}
func (m *HSMDateTimeUnixEpoch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HSMDateTimeUnixEpoch.Marshal(b, m, deterministic)
}
func (m *HSMDateTimeUnixEpoch) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HSMDateTimeUnixEpoch.Merge(m, src)
}
func (m *HSMDateTimeUnixEpoch) XXX_Size() int {
	return xxx_messageInfo_HSMDateTimeUnixEpoch.Size(m)
}
func (m *HSMDateTimeUnixEpoch) XXX_DiscardUnknown() {
	xxx_messageInfo_HSMDateTimeUnixEpoch.DiscardUnknown(m)
}

var xxx_messageInfo_HSMDateTimeUnixEpoch proto.InternalMessageInfo

func (m *HSMDateTimeUnixEpoch) GetTimestamp() int64 {
	if m != nil && m.Timestamp != nil {
		return *m.Timestamp
	}
	return 0
}

type HSMDateTime struct {
	// Types that are valid to be assigned to DatetimeOneof:
	//	*HSMDateTime_Component
	//	*HSMDateTime_UnixEpoch
	DatetimeOneof        isHSMDateTime_DatetimeOneof `protobuf_oneof:"datetimeOneof"`
	XXX_NoUnkeyedLiteral struct{}                    `json:"-"`
	XXX_unrecognized     []byte                      `json:"-"`
	XXX_sizecache        int32                       `json:"-"`
}

func (m *HSMDateTime) Reset()         { *m = HSMDateTime{} }
func (m *HSMDateTime) String() string { return proto.CompactTextString(m) }
func (*HSMDateTime) ProtoMessage()    {}
func (*HSMDateTime) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{28}
}

func (m *HSMDateTime) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HSMDateTime.Unmarshal(m, b)
}
func (m *HSMDateTime) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HSMDateTime.Marshal(b, m, deterministic)
}
func (m *HSMDateTime) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HSMDateTime.Merge(m, src)
}
func (m *HSMDateTime) XXX_Size() int {
	return xxx_messageInfo_HSMDateTime.Size(m)
}
func (m *HSMDateTime) XXX_DiscardUnknown() {
	xxx_messageInfo_HSMDateTime.DiscardUnknown(m)
}

var xxx_messageInfo_HSMDateTime proto.InternalMessageInfo

type isHSMDateTime_DatetimeOneof interface {
	isHSMDateTime_DatetimeOneof()
}

type HSMDateTime_Component struct {
	Component *HSMDateTimeComponent `protobuf:"bytes,1,opt,name=component,oneof"`
}

type HSMDateTime_UnixEpoch struct {
	UnixEpoch *HSMDateTimeUnixEpoch `protobuf:"bytes,2,opt,name=unixEpoch,oneof"`
}

func (*HSMDateTime_Component) isHSMDateTime_DatetimeOneof() {}

func (*HSMDateTime_UnixEpoch) isHSMDateTime_DatetimeOneof() {}

func (m *HSMDateTime) GetDatetimeOneof() isHSMDateTime_DatetimeOneof {
	if m != nil {
		return m.DatetimeOneof
	}
	return nil
}

func (m *HSMDateTime) GetComponent() *HSMDateTimeComponent {
	if x, ok := m.GetDatetimeOneof().(*HSMDateTime_Component); ok {
		return x.Component
	}
	return nil
}

func (m *HSMDateTime) GetUnixEpoch() *HSMDateTimeUnixEpoch {
	if x, ok := m.GetDatetimeOneof().(*HSMDateTime_UnixEpoch); ok {
		return x.UnixEpoch
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*HSMDateTime) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*HSMDateTime_Component)(nil),
		(*HSMDateTime_UnixEpoch)(nil),
	}
}

type HSMLocalizableParameter struct {
	Default *string `protobuf:"bytes,1,opt,name=default" json:"default,omitempty"`
	// Types that are valid to be assigned to ParamOneof:
	//	*HSMLocalizableParameter_Currency
	//	*HSMLocalizableParameter_DateTime
	ParamOneof           isHSMLocalizableParameter_ParamOneof `protobuf_oneof:"paramOneof"`
	XXX_NoUnkeyedLiteral struct{}                             `json:"-"`
	XXX_unrecognized     []byte                               `json:"-"`
	XXX_sizecache        int32                                `json:"-"`
}

func (m *HSMLocalizableParameter) Reset()         { *m = HSMLocalizableParameter{} }
func (m *HSMLocalizableParameter) String() string { return proto.CompactTextString(m) }
func (*HSMLocalizableParameter) ProtoMessage()    {}
func (*HSMLocalizableParameter) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{29}
}

func (m *HSMLocalizableParameter) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HSMLocalizableParameter.Unmarshal(m, b)
}
func (m *HSMLocalizableParameter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HSMLocalizableParameter.Marshal(b, m, deterministic)
}
func (m *HSMLocalizableParameter) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HSMLocalizableParameter.Merge(m, src)
}
func (m *HSMLocalizableParameter) XXX_Size() int {
	return xxx_messageInfo_HSMLocalizableParameter.Size(m)
}
func (m *HSMLocalizableParameter) XXX_DiscardUnknown() {
	xxx_messageInfo_HSMLocalizableParameter.DiscardUnknown(m)
}

var xxx_messageInfo_HSMLocalizableParameter proto.InternalMessageInfo

func (m *HSMLocalizableParameter) GetDefault() string {
	if m != nil && m.Default != nil {
		return *m.Default
	}
	return ""
}

type isHSMLocalizableParameter_ParamOneof interface {
	isHSMLocalizableParameter_ParamOneof()
}

type HSMLocalizableParameter_Currency struct {
	Currency *HSMCurrency `protobuf:"bytes,2,opt,name=currency,oneof"`
}

type HSMLocalizableParameter_DateTime struct {
	DateTime *HSMDateTime `protobuf:"bytes,3,opt,name=dateTime,oneof"`
}

func (*HSMLocalizableParameter_Currency) isHSMLocalizableParameter_ParamOneof() {}

func (*HSMLocalizableParameter_DateTime) isHSMLocalizableParameter_ParamOneof() {}

func (m *HSMLocalizableParameter) GetParamOneof() isHSMLocalizableParameter_ParamOneof {
	if m != nil {
		return m.ParamOneof
	}
	return nil
}

func (m *HSMLocalizableParameter) GetCurrency() *HSMCurrency {
	if x, ok := m.GetParamOneof().(*HSMLocalizableParameter_Currency); ok {
		return x.Currency
	}
	return nil
}

func (m *HSMLocalizableParameter) GetDateTime() *HSMDateTime {
	if x, ok := m.GetParamOneof().(*HSMLocalizableParameter_DateTime); ok {
		return x.DateTime
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*HSMLocalizableParameter) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*HSMLocalizableParameter_Currency)(nil),
		(*HSMLocalizableParameter_DateTime)(nil),
	}
}

type HighlyStructuredMessage struct {
	Namespace            *string                    `protobuf:"bytes,1,opt,name=namespace" json:"namespace,omitempty"`
	ElementName          *string                    `protobuf:"bytes,2,opt,name=elementName" json:"elementName,omitempty"`
	Params               []string                   `protobuf:"bytes,3,rep,name=params" json:"params,omitempty"`
	FallbackLg           *string                    `protobuf:"bytes,4,opt,name=fallbackLg" json:"fallbackLg,omitempty"`
	FallbackLc           *string                    `protobuf:"bytes,5,opt,name=fallbackLc" json:"fallbackLc,omitempty"`
	LocalizableParams    []*HSMLocalizableParameter `protobuf:"bytes,6,rep,name=localizableParams" json:"localizableParams,omitempty"`
	DeterministicLg      *string                    `protobuf:"bytes,7,opt,name=deterministicLg" json:"deterministicLg,omitempty"`
	DeterministicLc      *string                    `protobuf:"bytes,8,opt,name=deterministicLc" json:"deterministicLc,omitempty"`
	HydratedHsm          *TemplateMessage           `protobuf:"bytes,9,opt,name=hydratedHsm" json:"hydratedHsm,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                   `json:"-"`
	XXX_unrecognized     []byte                     `json:"-"`
	XXX_sizecache        int32                      `json:"-"`
}

func (m *HighlyStructuredMessage) Reset()         { *m = HighlyStructuredMessage{} }
func (m *HighlyStructuredMessage) String() string { return proto.CompactTextString(m) }
func (*HighlyStructuredMessage) ProtoMessage()    {}
func (*HighlyStructuredMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{30}
}

func (m *HighlyStructuredMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HighlyStructuredMessage.Unmarshal(m, b)
}
func (m *HighlyStructuredMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HighlyStructuredMessage.Marshal(b, m, deterministic)
}
func (m *HighlyStructuredMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HighlyStructuredMessage.Merge(m, src)
}
func (m *HighlyStructuredMessage) XXX_Size() int {
	return xxx_messageInfo_HighlyStructuredMessage.Size(m)
}
func (m *HighlyStructuredMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_HighlyStructuredMessage.DiscardUnknown(m)
}

var xxx_messageInfo_HighlyStructuredMessage proto.InternalMessageInfo

func (m *HighlyStructuredMessage) GetNamespace() string {
	if m != nil && m.Namespace != nil {
		return *m.Namespace
	}
	return ""
}

func (m *HighlyStructuredMessage) GetElementName() string {
	if m != nil && m.ElementName != nil {
		return *m.ElementName
	}
	return ""
}

func (m *HighlyStructuredMessage) GetParams() []string {
	if m != nil {
		return m.Params
	}
	return nil
}

func (m *HighlyStructuredMessage) GetFallbackLg() string {
	if m != nil && m.FallbackLg != nil {
		return *m.FallbackLg
	}
	return ""
}

func (m *HighlyStructuredMessage) GetFallbackLc() string {
	if m != nil && m.FallbackLc != nil {
		return *m.FallbackLc
	}
	return ""
}

func (m *HighlyStructuredMessage) GetLocalizableParams() []*HSMLocalizableParameter {
	if m != nil {
		return m.LocalizableParams
	}
	return nil
}

func (m *HighlyStructuredMessage) GetDeterministicLg() string {
	if m != nil && m.DeterministicLg != nil {
		return *m.DeterministicLg
	}
	return ""
}

func (m *HighlyStructuredMessage) GetDeterministicLc() string {
	if m != nil && m.DeterministicLc != nil {
		return *m.DeterministicLc
	}
	return ""
}

func (m *HighlyStructuredMessage) GetHydratedHsm() *TemplateMessage {
	if m != nil {
		return m.HydratedHsm
	}
	return nil
}

type SendPaymentMessage struct {
	NoteMessage          *Message    `protobuf:"bytes,2,opt,name=noteMessage" json:"noteMessage,omitempty"`
	RequestMessageKey    *MessageKey `protobuf:"bytes,3,opt,name=requestMessageKey" json:"requestMessageKey,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *SendPaymentMessage) Reset()         { *m = SendPaymentMessage{} }
func (m *SendPaymentMessage) String() string { return proto.CompactTextString(m) }
func (*SendPaymentMessage) ProtoMessage()    {}
func (*SendPaymentMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{31}
}

func (m *SendPaymentMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SendPaymentMessage.Unmarshal(m, b)
}
func (m *SendPaymentMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SendPaymentMessage.Marshal(b, m, deterministic)
}
func (m *SendPaymentMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SendPaymentMessage.Merge(m, src)
}
func (m *SendPaymentMessage) XXX_Size() int {
	return xxx_messageInfo_SendPaymentMessage.Size(m)
}
func (m *SendPaymentMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_SendPaymentMessage.DiscardUnknown(m)
}

var xxx_messageInfo_SendPaymentMessage proto.InternalMessageInfo

func (m *SendPaymentMessage) GetNoteMessage() *Message {
	if m != nil {
		return m.NoteMessage
	}
	return nil
}

func (m *SendPaymentMessage) GetRequestMessageKey() *MessageKey {
	if m != nil {
		return m.RequestMessageKey
	}
	return nil
}

type RequestPaymentMessage struct {
	NoteMessage          *Message `protobuf:"bytes,4,opt,name=noteMessage" json:"noteMessage,omitempty"`
	CurrencyCodeIso4217  *string  `protobuf:"bytes,1,opt,name=currencyCodeIso4217" json:"currencyCodeIso4217,omitempty"`
	Amount1000           *uint64  `protobuf:"varint,2,opt,name=amount1000" json:"amount1000,omitempty"`
	RequestFrom          *string  `protobuf:"bytes,3,opt,name=requestFrom" json:"requestFrom,omitempty"`
	ExpiryTimestamp      *int64   `protobuf:"varint,5,opt,name=expiryTimestamp" json:"expiryTimestamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RequestPaymentMessage) Reset()         { *m = RequestPaymentMessage{} }
func (m *RequestPaymentMessage) String() string { return proto.CompactTextString(m) }
func (*RequestPaymentMessage) ProtoMessage()    {}
func (*RequestPaymentMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{32}
}

func (m *RequestPaymentMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RequestPaymentMessage.Unmarshal(m, b)
}
func (m *RequestPaymentMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RequestPaymentMessage.Marshal(b, m, deterministic)
}
func (m *RequestPaymentMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RequestPaymentMessage.Merge(m, src)
}
func (m *RequestPaymentMessage) XXX_Size() int {
	return xxx_messageInfo_RequestPaymentMessage.Size(m)
}
func (m *RequestPaymentMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_RequestPaymentMessage.DiscardUnknown(m)
}

var xxx_messageInfo_RequestPaymentMessage proto.InternalMessageInfo

func (m *RequestPaymentMessage) GetNoteMessage() *Message {
	if m != nil {
		return m.NoteMessage
	}
	return nil
}

func (m *RequestPaymentMessage) GetCurrencyCodeIso4217() string {
	if m != nil && m.CurrencyCodeIso4217 != nil {
		return *m.CurrencyCodeIso4217
	}
	return ""
}

func (m *RequestPaymentMessage) GetAmount1000() uint64 {
	if m != nil && m.Amount1000 != nil {
		return *m.Amount1000
	}
	return 0
}

func (m *RequestPaymentMessage) GetRequestFrom() string {
	if m != nil && m.RequestFrom != nil {
		return *m.RequestFrom
	}
	return ""
}

func (m *RequestPaymentMessage) GetExpiryTimestamp() int64 {
	if m != nil && m.ExpiryTimestamp != nil {
		return *m.ExpiryTimestamp
	}
	return 0
}

type DeclinePaymentRequestMessage struct {
	Key                  *MessageKey `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *DeclinePaymentRequestMessage) Reset()         { *m = DeclinePaymentRequestMessage{} }
func (m *DeclinePaymentRequestMessage) String() string { return proto.CompactTextString(m) }
func (*DeclinePaymentRequestMessage) ProtoMessage()    {}
func (*DeclinePaymentRequestMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{33}
}

func (m *DeclinePaymentRequestMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeclinePaymentRequestMessage.Unmarshal(m, b)
}
func (m *DeclinePaymentRequestMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeclinePaymentRequestMessage.Marshal(b, m, deterministic)
}
func (m *DeclinePaymentRequestMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeclinePaymentRequestMessage.Merge(m, src)
}
func (m *DeclinePaymentRequestMessage) XXX_Size() int {
	return xxx_messageInfo_DeclinePaymentRequestMessage.Size(m)
}
func (m *DeclinePaymentRequestMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_DeclinePaymentRequestMessage.DiscardUnknown(m)
}

var xxx_messageInfo_DeclinePaymentRequestMessage proto.InternalMessageInfo

func (m *DeclinePaymentRequestMessage) GetKey() *MessageKey {
	if m != nil {
		return m.Key
	}
	return nil
}

type CancelPaymentRequestMessage struct {
	Key                  *MessageKey `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *CancelPaymentRequestMessage) Reset()         { *m = CancelPaymentRequestMessage{} }
func (m *CancelPaymentRequestMessage) String() string { return proto.CompactTextString(m) }
func (*CancelPaymentRequestMessage) ProtoMessage()    {}
func (*CancelPaymentRequestMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{34}
}

func (m *CancelPaymentRequestMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CancelPaymentRequestMessage.Unmarshal(m, b)
}
func (m *CancelPaymentRequestMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CancelPaymentRequestMessage.Marshal(b, m, deterministic)
}
func (m *CancelPaymentRequestMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CancelPaymentRequestMessage.Merge(m, src)
}
func (m *CancelPaymentRequestMessage) XXX_Size() int {
	return xxx_messageInfo_CancelPaymentRequestMessage.Size(m)
}
func (m *CancelPaymentRequestMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_CancelPaymentRequestMessage.DiscardUnknown(m)
}

var xxx_messageInfo_CancelPaymentRequestMessage proto.InternalMessageInfo

func (m *CancelPaymentRequestMessage) GetKey() *MessageKey {
	if m != nil {
		return m.Key
	}
	return nil
}

type LiveLocationMessage struct {
	DegreesLatitude                   *float64     `protobuf:"fixed64,1,opt,name=degreesLatitude" json:"degreesLatitude,omitempty"`
	DegreesLongitude                  *float64     `protobuf:"fixed64,2,opt,name=degreesLongitude" json:"degreesLongitude,omitempty"`
	AccuracyInMeters                  *uint32      `protobuf:"varint,3,opt,name=accuracyInMeters" json:"accuracyInMeters,omitempty"`
	SpeedInMps                        *float32     `protobuf:"fixed32,4,opt,name=speedInMps" json:"speedInMps,omitempty"`
	DegreesClockwiseFromMagneticNorth *uint32      `protobuf:"varint,5,opt,name=degreesClockwiseFromMagneticNorth" json:"degreesClockwiseFromMagneticNorth,omitempty"`
	Caption                           *string      `protobuf:"bytes,6,opt,name=caption" json:"caption,omitempty"`
	SequenceNumber                    *int64       `protobuf:"varint,7,opt,name=sequenceNumber" json:"sequenceNumber,omitempty"`
	TimeOffset                        *uint32      `protobuf:"varint,8,opt,name=timeOffset" json:"timeOffset,omitempty"`
	JpegThumbnail                     []byte       `protobuf:"bytes,16,opt,name=jpegThumbnail" json:"jpegThumbnail,omitempty"`
	ContextInfo                       *ContextInfo `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	XXX_NoUnkeyedLiteral              struct{}     `json:"-"`
	XXX_unrecognized                  []byte       `json:"-"`
	XXX_sizecache                     int32        `json:"-"`
}

func (m *LiveLocationMessage) Reset()         { *m = LiveLocationMessage{} }
func (m *LiveLocationMessage) String() string { return proto.CompactTextString(m) }
func (*LiveLocationMessage) ProtoMessage()    {}
func (*LiveLocationMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{35}
}

func (m *LiveLocationMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LiveLocationMessage.Unmarshal(m, b)
}
func (m *LiveLocationMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LiveLocationMessage.Marshal(b, m, deterministic)
}
func (m *LiveLocationMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LiveLocationMessage.Merge(m, src)
}
func (m *LiveLocationMessage) XXX_Size() int {
	return xxx_messageInfo_LiveLocationMessage.Size(m)
}
func (m *LiveLocationMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_LiveLocationMessage.DiscardUnknown(m)
}

var xxx_messageInfo_LiveLocationMessage proto.InternalMessageInfo

func (m *LiveLocationMessage) GetDegreesLatitude() float64 {
	if m != nil && m.DegreesLatitude != nil {
		return *m.DegreesLatitude
	}
	return 0
}

func (m *LiveLocationMessage) GetDegreesLongitude() float64 {
	if m != nil && m.DegreesLongitude != nil {
		return *m.DegreesLongitude
	}
	return 0
}

func (m *LiveLocationMessage) GetAccuracyInMeters() uint32 {
	if m != nil && m.AccuracyInMeters != nil {
		return *m.AccuracyInMeters
	}
	return 0
}

func (m *LiveLocationMessage) GetSpeedInMps() float32 {
	if m != nil && m.SpeedInMps != nil {
		return *m.SpeedInMps
	}
	return 0
}

func (m *LiveLocationMessage) GetDegreesClockwiseFromMagneticNorth() uint32 {
	if m != nil && m.DegreesClockwiseFromMagneticNorth != nil {
		return *m.DegreesClockwiseFromMagneticNorth
	}
	return 0
}

func (m *LiveLocationMessage) GetCaption() string {
	if m != nil && m.Caption != nil {
		return *m.Caption
	}
	return ""
}

func (m *LiveLocationMessage) GetSequenceNumber() int64 {
	if m != nil && m.SequenceNumber != nil {
		return *m.SequenceNumber
	}
	return 0
}

func (m *LiveLocationMessage) GetTimeOffset() uint32 {
	if m != nil && m.TimeOffset != nil {
		return *m.TimeOffset
	}
	return 0
}

func (m *LiveLocationMessage) GetJpegThumbnail() []byte {
	if m != nil {
		return m.JpegThumbnail
	}
	return nil
}

func (m *LiveLocationMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

type StickerMessage struct {
	Url                  *string      `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
	FileSha256           []byte       `protobuf:"bytes,2,opt,name=fileSha256" json:"fileSha256,omitempty"`
	FileEncSha256        []byte       `protobuf:"bytes,3,opt,name=fileEncSha256" json:"fileEncSha256,omitempty"`
	MediaKey             []byte       `protobuf:"bytes,4,opt,name=mediaKey" json:"mediaKey,omitempty"`
	Mimetype             *string      `protobuf:"bytes,5,opt,name=mimetype" json:"mimetype,omitempty"`
	Height               *uint32      `protobuf:"varint,6,opt,name=height" json:"height,omitempty"`
	Width                *uint32      `protobuf:"varint,7,opt,name=width" json:"width,omitempty"`
	DirectPath           *string      `protobuf:"bytes,8,opt,name=directPath" json:"directPath,omitempty"`
	FileLength           *uint64      `protobuf:"varint,9,opt,name=fileLength" json:"fileLength,omitempty"`
	MediaKeyTimestamp    *int64       `protobuf:"varint,10,opt,name=mediaKeyTimestamp" json:"mediaKeyTimestamp,omitempty"`
	FirstFrameLength     *uint32      `protobuf:"varint,11,opt,name=firstFrameLength" json:"firstFrameLength,omitempty"`
	FirstFrameSidecar    []byte       `protobuf:"bytes,12,opt,name=firstFrameSidecar" json:"firstFrameSidecar,omitempty"`
	ContextInfo          *ContextInfo `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *StickerMessage) Reset()         { *m = StickerMessage{} }
func (m *StickerMessage) String() string { return proto.CompactTextString(m) }
func (*StickerMessage) ProtoMessage()    {}
func (*StickerMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{36}
}

func (m *StickerMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StickerMessage.Unmarshal(m, b)
}
func (m *StickerMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StickerMessage.Marshal(b, m, deterministic)
}
func (m *StickerMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StickerMessage.Merge(m, src)
}
func (m *StickerMessage) XXX_Size() int {
	return xxx_messageInfo_StickerMessage.Size(m)
}
func (m *StickerMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_StickerMessage.DiscardUnknown(m)
}

var xxx_messageInfo_StickerMessage proto.InternalMessageInfo

func (m *StickerMessage) GetUrl() string {
	if m != nil && m.Url != nil {
		return *m.Url
	}
	return ""
}

func (m *StickerMessage) GetFileSha256() []byte {
	if m != nil {
		return m.FileSha256
	}
	return nil
}

func (m *StickerMessage) GetFileEncSha256() []byte {
	if m != nil {
		return m.FileEncSha256
	}
	return nil
}

func (m *StickerMessage) GetMediaKey() []byte {
	if m != nil {
		return m.MediaKey
	}
	return nil
}

func (m *StickerMessage) GetMimetype() string {
	if m != nil && m.Mimetype != nil {
		return *m.Mimetype
	}
	return ""
}

func (m *StickerMessage) GetHeight() uint32 {
	if m != nil && m.Height != nil {
		return *m.Height
	}
	return 0
}

func (m *StickerMessage) GetWidth() uint32 {
	if m != nil && m.Width != nil {
		return *m.Width
	}
	return 0
}

func (m *StickerMessage) GetDirectPath() string {
	if m != nil && m.DirectPath != nil {
		return *m.DirectPath
	}
	return ""
}

func (m *StickerMessage) GetFileLength() uint64 {
	if m != nil && m.FileLength != nil {
		return *m.FileLength
	}
	return 0
}

func (m *StickerMessage) GetMediaKeyTimestamp() int64 {
	if m != nil && m.MediaKeyTimestamp != nil {
		return *m.MediaKeyTimestamp
	}
	return 0
}

func (m *StickerMessage) GetFirstFrameLength() uint32 {
	if m != nil && m.FirstFrameLength != nil {
		return *m.FirstFrameLength
	}
	return 0
}

func (m *StickerMessage) GetFirstFrameSidecar() []byte {
	if m != nil {
		return m.FirstFrameSidecar
	}
	return nil
}

func (m *StickerMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

type FourRowTemplate struct {
	Content *HighlyStructuredMessage `protobuf:"bytes,6,opt,name=content" json:"content,omitempty"`
	Footer  *HighlyStructuredMessage `protobuf:"bytes,7,opt,name=footer" json:"footer,omitempty"`
	Buttons []*TemplateButton        `protobuf:"bytes,8,rep,name=buttons" json:"buttons,omitempty"`
	// Types that are valid to be assigned to Title:
	//	*FourRowTemplate_DocumentMessage
	//	*FourRowTemplate_HighlyStructuredMessage
	//	*FourRowTemplate_ImageMessage
	//	*FourRowTemplate_VideoMessage
	//	*FourRowTemplate_LocationMessage
	Title                isFourRowTemplate_Title `protobuf_oneof:"title"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

func (m *FourRowTemplate) Reset()         { *m = FourRowTemplate{} }
func (m *FourRowTemplate) String() string { return proto.CompactTextString(m) }
func (*FourRowTemplate) ProtoMessage()    {}
func (*FourRowTemplate) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{37}
}

func (m *FourRowTemplate) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FourRowTemplate.Unmarshal(m, b)
}
func (m *FourRowTemplate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FourRowTemplate.Marshal(b, m, deterministic)
}
func (m *FourRowTemplate) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FourRowTemplate.Merge(m, src)
}
func (m *FourRowTemplate) XXX_Size() int {
	return xxx_messageInfo_FourRowTemplate.Size(m)
}
func (m *FourRowTemplate) XXX_DiscardUnknown() {
	xxx_messageInfo_FourRowTemplate.DiscardUnknown(m)
}

var xxx_messageInfo_FourRowTemplate proto.InternalMessageInfo

func (m *FourRowTemplate) GetContent() *HighlyStructuredMessage {
	if m != nil {
		return m.Content
	}
	return nil
}

func (m *FourRowTemplate) GetFooter() *HighlyStructuredMessage {
	if m != nil {
		return m.Footer
	}
	return nil
}

func (m *FourRowTemplate) GetButtons() []*TemplateButton {
	if m != nil {
		return m.Buttons
	}
	return nil
}

type isFourRowTemplate_Title interface {
	isFourRowTemplate_Title()
}

type FourRowTemplate_DocumentMessage struct {
	DocumentMessage *DocumentMessage `protobuf:"bytes,1,opt,name=documentMessage,oneof"`
}

type FourRowTemplate_HighlyStructuredMessage struct {
	HighlyStructuredMessage *HighlyStructuredMessage `protobuf:"bytes,2,opt,name=highlyStructuredMessage,oneof"`
}

type FourRowTemplate_ImageMessage struct {
	ImageMessage *ImageMessage `protobuf:"bytes,3,opt,name=imageMessage,oneof"`
}

type FourRowTemplate_VideoMessage struct {
	VideoMessage *VideoMessage `protobuf:"bytes,4,opt,name=videoMessage,oneof"`
}

type FourRowTemplate_LocationMessage struct {
	LocationMessage *LocationMessage `protobuf:"bytes,5,opt,name=locationMessage,oneof"`
}

func (*FourRowTemplate_DocumentMessage) isFourRowTemplate_Title() {}

func (*FourRowTemplate_HighlyStructuredMessage) isFourRowTemplate_Title() {}

func (*FourRowTemplate_ImageMessage) isFourRowTemplate_Title() {}

func (*FourRowTemplate_VideoMessage) isFourRowTemplate_Title() {}

func (*FourRowTemplate_LocationMessage) isFourRowTemplate_Title() {}

func (m *FourRowTemplate) GetTitle() isFourRowTemplate_Title {
	if m != nil {
		return m.Title
	}
	return nil
}

func (m *FourRowTemplate) GetDocumentMessage() *DocumentMessage {
	if x, ok := m.GetTitle().(*FourRowTemplate_DocumentMessage); ok {
		return x.DocumentMessage
	}
	return nil
}

func (m *FourRowTemplate) GetHighlyStructuredMessage() *HighlyStructuredMessage {
	if x, ok := m.GetTitle().(*FourRowTemplate_HighlyStructuredMessage); ok {
		return x.HighlyStructuredMessage
	}
	return nil
}

func (m *FourRowTemplate) GetImageMessage() *ImageMessage {
	if x, ok := m.GetTitle().(*FourRowTemplate_ImageMessage); ok {
		return x.ImageMessage
	}
	return nil
}

func (m *FourRowTemplate) GetVideoMessage() *VideoMessage {
	if x, ok := m.GetTitle().(*FourRowTemplate_VideoMessage); ok {
		return x.VideoMessage
	}
	return nil
}

func (m *FourRowTemplate) GetLocationMessage() *LocationMessage {
	if x, ok := m.GetTitle().(*FourRowTemplate_LocationMessage); ok {
		return x.LocationMessage
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*FourRowTemplate) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*FourRowTemplate_DocumentMessage)(nil),
		(*FourRowTemplate_HighlyStructuredMessage)(nil),
		(*FourRowTemplate_ImageMessage)(nil),
		(*FourRowTemplate_VideoMessage)(nil),
		(*FourRowTemplate_LocationMessage)(nil),
	}
}

type HydratedFourRowTemplate struct {
	HydratedContentText *string                   `protobuf:"bytes,6,opt,name=hydratedContentText" json:"hydratedContentText,omitempty"`
	HydratedFooterText  *string                   `protobuf:"bytes,7,opt,name=hydratedFooterText" json:"hydratedFooterText,omitempty"`
	HydratedButtons     []*HydratedTemplateButton `protobuf:"bytes,8,rep,name=hydratedButtons" json:"hydratedButtons,omitempty"`
	TemplateId          *string                   `protobuf:"bytes,9,opt,name=templateId" json:"templateId,omitempty"`
	// Types that are valid to be assigned to Title:
	//	*HydratedFourRowTemplate_DocumentMessage
	//	*HydratedFourRowTemplate_HydratedTitleText
	//	*HydratedFourRowTemplate_ImageMessage
	//	*HydratedFourRowTemplate_VideoMessage
	//	*HydratedFourRowTemplate_LocationMessage
	Title                isHydratedFourRowTemplate_Title `protobuf_oneof:"title"`
	XXX_NoUnkeyedLiteral struct{}                        `json:"-"`
	XXX_unrecognized     []byte                          `json:"-"`
	XXX_sizecache        int32                           `json:"-"`
}

func (m *HydratedFourRowTemplate) Reset()         { *m = HydratedFourRowTemplate{} }
func (m *HydratedFourRowTemplate) String() string { return proto.CompactTextString(m) }
func (*HydratedFourRowTemplate) ProtoMessage()    {}
func (*HydratedFourRowTemplate) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{38}
}

func (m *HydratedFourRowTemplate) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HydratedFourRowTemplate.Unmarshal(m, b)
}
func (m *HydratedFourRowTemplate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HydratedFourRowTemplate.Marshal(b, m, deterministic)
}
func (m *HydratedFourRowTemplate) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HydratedFourRowTemplate.Merge(m, src)
}
func (m *HydratedFourRowTemplate) XXX_Size() int {
	return xxx_messageInfo_HydratedFourRowTemplate.Size(m)
}
func (m *HydratedFourRowTemplate) XXX_DiscardUnknown() {
	xxx_messageInfo_HydratedFourRowTemplate.DiscardUnknown(m)
}

var xxx_messageInfo_HydratedFourRowTemplate proto.InternalMessageInfo

func (m *HydratedFourRowTemplate) GetHydratedContentText() string {
	if m != nil && m.HydratedContentText != nil {
		return *m.HydratedContentText
	}
	return ""
}

func (m *HydratedFourRowTemplate) GetHydratedFooterText() string {
	if m != nil && m.HydratedFooterText != nil {
		return *m.HydratedFooterText
	}
	return ""
}

func (m *HydratedFourRowTemplate) GetHydratedButtons() []*HydratedTemplateButton {
	if m != nil {
		return m.HydratedButtons
	}
	return nil
}

func (m *HydratedFourRowTemplate) GetTemplateId() string {
	if m != nil && m.TemplateId != nil {
		return *m.TemplateId
	}
	return ""
}

type isHydratedFourRowTemplate_Title interface {
	isHydratedFourRowTemplate_Title()
}

type HydratedFourRowTemplate_DocumentMessage struct {
	DocumentMessage *DocumentMessage `protobuf:"bytes,1,opt,name=documentMessage,oneof"`
}

type HydratedFourRowTemplate_HydratedTitleText struct {
	HydratedTitleText string `protobuf:"bytes,2,opt,name=hydratedTitleText,oneof"`
}

type HydratedFourRowTemplate_ImageMessage struct {
	ImageMessage *ImageMessage `protobuf:"bytes,3,opt,name=imageMessage,oneof"`
}

type HydratedFourRowTemplate_VideoMessage struct {
	VideoMessage *VideoMessage `protobuf:"bytes,4,opt,name=videoMessage,oneof"`
}

type HydratedFourRowTemplate_LocationMessage struct {
	LocationMessage *LocationMessage `protobuf:"bytes,5,opt,name=locationMessage,oneof"`
}

func (*HydratedFourRowTemplate_DocumentMessage) isHydratedFourRowTemplate_Title() {}

func (*HydratedFourRowTemplate_HydratedTitleText) isHydratedFourRowTemplate_Title() {}

func (*HydratedFourRowTemplate_ImageMessage) isHydratedFourRowTemplate_Title() {}

func (*HydratedFourRowTemplate_VideoMessage) isHydratedFourRowTemplate_Title() {}

func (*HydratedFourRowTemplate_LocationMessage) isHydratedFourRowTemplate_Title() {}

func (m *HydratedFourRowTemplate) GetTitle() isHydratedFourRowTemplate_Title {
	if m != nil {
		return m.Title
	}
	return nil
}

func (m *HydratedFourRowTemplate) GetDocumentMessage() *DocumentMessage {
	if x, ok := m.GetTitle().(*HydratedFourRowTemplate_DocumentMessage); ok {
		return x.DocumentMessage
	}
	return nil
}

func (m *HydratedFourRowTemplate) GetHydratedTitleText() string {
	if x, ok := m.GetTitle().(*HydratedFourRowTemplate_HydratedTitleText); ok {
		return x.HydratedTitleText
	}
	return ""
}

func (m *HydratedFourRowTemplate) GetImageMessage() *ImageMessage {
	if x, ok := m.GetTitle().(*HydratedFourRowTemplate_ImageMessage); ok {
		return x.ImageMessage
	}
	return nil
}

func (m *HydratedFourRowTemplate) GetVideoMessage() *VideoMessage {
	if x, ok := m.GetTitle().(*HydratedFourRowTemplate_VideoMessage); ok {
		return x.VideoMessage
	}
	return nil
}

func (m *HydratedFourRowTemplate) GetLocationMessage() *LocationMessage {
	if x, ok := m.GetTitle().(*HydratedFourRowTemplate_LocationMessage); ok {
		return x.LocationMessage
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*HydratedFourRowTemplate) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*HydratedFourRowTemplate_DocumentMessage)(nil),
		(*HydratedFourRowTemplate_HydratedTitleText)(nil),
		(*HydratedFourRowTemplate_ImageMessage)(nil),
		(*HydratedFourRowTemplate_VideoMessage)(nil),
		(*HydratedFourRowTemplate_LocationMessage)(nil),
	}
}

type TemplateMessage struct {
	ContextInfo      *ContextInfo             `protobuf:"bytes,3,opt,name=contextInfo" json:"contextInfo,omitempty"`
	HydratedTemplate *HydratedFourRowTemplate `protobuf:"bytes,4,opt,name=hydratedTemplate" json:"hydratedTemplate,omitempty"`
	// Types that are valid to be assigned to Format:
	//	*TemplateMessage_FourRowTemplate
	//	*TemplateMessage_HydratedFourRowTemplate
	Format               isTemplateMessage_Format `protobuf_oneof:"format"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (m *TemplateMessage) Reset()         { *m = TemplateMessage{} }
func (m *TemplateMessage) String() string { return proto.CompactTextString(m) }
func (*TemplateMessage) ProtoMessage()    {}
func (*TemplateMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{39}
}

func (m *TemplateMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TemplateMessage.Unmarshal(m, b)
}
func (m *TemplateMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TemplateMessage.Marshal(b, m, deterministic)
}
func (m *TemplateMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TemplateMessage.Merge(m, src)
}
func (m *TemplateMessage) XXX_Size() int {
	return xxx_messageInfo_TemplateMessage.Size(m)
}
func (m *TemplateMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_TemplateMessage.DiscardUnknown(m)
}

var xxx_messageInfo_TemplateMessage proto.InternalMessageInfo

func (m *TemplateMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

func (m *TemplateMessage) GetHydratedTemplate() *HydratedFourRowTemplate {
	if m != nil {
		return m.HydratedTemplate
	}
	return nil
}

type isTemplateMessage_Format interface {
	isTemplateMessage_Format()
}

type TemplateMessage_FourRowTemplate struct {
	FourRowTemplate *FourRowTemplate `protobuf:"bytes,1,opt,name=fourRowTemplate,oneof"`
}

type TemplateMessage_HydratedFourRowTemplate struct {
	HydratedFourRowTemplate *HydratedFourRowTemplate `protobuf:"bytes,2,opt,name=hydratedFourRowTemplate,oneof"`
}

func (*TemplateMessage_FourRowTemplate) isTemplateMessage_Format() {}

func (*TemplateMessage_HydratedFourRowTemplate) isTemplateMessage_Format() {}

func (m *TemplateMessage) GetFormat() isTemplateMessage_Format {
	if m != nil {
		return m.Format
	}
	return nil
}

func (m *TemplateMessage) GetFourRowTemplate() *FourRowTemplate {
	if x, ok := m.GetFormat().(*TemplateMessage_FourRowTemplate); ok {
		return x.FourRowTemplate
	}
	return nil
}

func (m *TemplateMessage) GetHydratedFourRowTemplate() *HydratedFourRowTemplate {
	if x, ok := m.GetFormat().(*TemplateMessage_HydratedFourRowTemplate); ok {
		return x.HydratedFourRowTemplate
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*TemplateMessage) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*TemplateMessage_FourRowTemplate)(nil),
		(*TemplateMessage_HydratedFourRowTemplate)(nil),
	}
}

type TemplateButtonReplyMessage struct {
	SelectedId           *string      `protobuf:"bytes,1,opt,name=selectedId" json:"selectedId,omitempty"`
	SelectedDisplayText  *string      `protobuf:"bytes,2,opt,name=selectedDisplayText" json:"selectedDisplayText,omitempty"`
	ContextInfo          *ContextInfo `protobuf:"bytes,3,opt,name=contextInfo" json:"contextInfo,omitempty"`
	SelectedIndex        *uint32      `protobuf:"varint,4,opt,name=selectedIndex" json:"selectedIndex,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *TemplateButtonReplyMessage) Reset()         { *m = TemplateButtonReplyMessage{} }
func (m *TemplateButtonReplyMessage) String() string { return proto.CompactTextString(m) }
func (*TemplateButtonReplyMessage) ProtoMessage()    {}
func (*TemplateButtonReplyMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{40}
}

func (m *TemplateButtonReplyMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TemplateButtonReplyMessage.Unmarshal(m, b)
}
func (m *TemplateButtonReplyMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TemplateButtonReplyMessage.Marshal(b, m, deterministic)
}
func (m *TemplateButtonReplyMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TemplateButtonReplyMessage.Merge(m, src)
}
func (m *TemplateButtonReplyMessage) XXX_Size() int {
	return xxx_messageInfo_TemplateButtonReplyMessage.Size(m)
}
func (m *TemplateButtonReplyMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_TemplateButtonReplyMessage.DiscardUnknown(m)
}

var xxx_messageInfo_TemplateButtonReplyMessage proto.InternalMessageInfo

func (m *TemplateButtonReplyMessage) GetSelectedId() string {
	if m != nil && m.SelectedId != nil {
		return *m.SelectedId
	}
	return ""
}

func (m *TemplateButtonReplyMessage) GetSelectedDisplayText() string {
	if m != nil && m.SelectedDisplayText != nil {
		return *m.SelectedDisplayText
	}
	return ""
}

func (m *TemplateButtonReplyMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

func (m *TemplateButtonReplyMessage) GetSelectedIndex() uint32 {
	if m != nil && m.SelectedIndex != nil {
		return *m.SelectedIndex
	}
	return 0
}

type ProductSnapshot struct {
	ProductImage         *ImageMessage `protobuf:"bytes,1,opt,name=productImage" json:"productImage,omitempty"`
	ProductId            *string       `protobuf:"bytes,2,opt,name=productId" json:"productId,omitempty"`
	Title                *string       `protobuf:"bytes,3,opt,name=title" json:"title,omitempty"`
	Description          *string       `protobuf:"bytes,4,opt,name=description" json:"description,omitempty"`
	CurrencyCode         *string       `protobuf:"bytes,5,opt,name=currencyCode" json:"currencyCode,omitempty"`
	PriceAmount1000      *int64        `protobuf:"varint,6,opt,name=priceAmount1000" json:"priceAmount1000,omitempty"`
	RetailerId           *string       `protobuf:"bytes,7,opt,name=retailerId" json:"retailerId,omitempty"`
	Url                  *string       `protobuf:"bytes,8,opt,name=url" json:"url,omitempty"`
	ProductImageCount    *uint32       `protobuf:"varint,9,opt,name=productImageCount" json:"productImageCount,omitempty"`
	FirstImageId         *string       `protobuf:"bytes,11,opt,name=firstImageId" json:"firstImageId,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *ProductSnapshot) Reset()         { *m = ProductSnapshot{} }
func (m *ProductSnapshot) String() string { return proto.CompactTextString(m) }
func (*ProductSnapshot) ProtoMessage()    {}
func (*ProductSnapshot) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{41}
}

func (m *ProductSnapshot) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ProductSnapshot.Unmarshal(m, b)
}
func (m *ProductSnapshot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ProductSnapshot.Marshal(b, m, deterministic)
}
func (m *ProductSnapshot) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ProductSnapshot.Merge(m, src)
}
func (m *ProductSnapshot) XXX_Size() int {
	return xxx_messageInfo_ProductSnapshot.Size(m)
}
func (m *ProductSnapshot) XXX_DiscardUnknown() {
	xxx_messageInfo_ProductSnapshot.DiscardUnknown(m)
}

var xxx_messageInfo_ProductSnapshot proto.InternalMessageInfo

func (m *ProductSnapshot) GetProductImage() *ImageMessage {
	if m != nil {
		return m.ProductImage
	}
	return nil
}

func (m *ProductSnapshot) GetProductId() string {
	if m != nil && m.ProductId != nil {
		return *m.ProductId
	}
	return ""
}

func (m *ProductSnapshot) GetTitle() string {
	if m != nil && m.Title != nil {
		return *m.Title
	}
	return ""
}

func (m *ProductSnapshot) GetDescription() string {
	if m != nil && m.Description != nil {
		return *m.Description
	}
	return ""
}

func (m *ProductSnapshot) GetCurrencyCode() string {
	if m != nil && m.CurrencyCode != nil {
		return *m.CurrencyCode
	}
	return ""
}

func (m *ProductSnapshot) GetPriceAmount1000() int64 {
	if m != nil && m.PriceAmount1000 != nil {
		return *m.PriceAmount1000
	}
	return 0
}

func (m *ProductSnapshot) GetRetailerId() string {
	if m != nil && m.RetailerId != nil {
		return *m.RetailerId
	}
	return ""
}

func (m *ProductSnapshot) GetUrl() string {
	if m != nil && m.Url != nil {
		return *m.Url
	}
	return ""
}

func (m *ProductSnapshot) GetProductImageCount() uint32 {
	if m != nil && m.ProductImageCount != nil {
		return *m.ProductImageCount
	}
	return 0
}

func (m *ProductSnapshot) GetFirstImageId() string {
	if m != nil && m.FirstImageId != nil {
		return *m.FirstImageId
	}
	return ""
}

type ProductMessage struct {
	Product              *ProductSnapshot `protobuf:"bytes,1,opt,name=product" json:"product,omitempty"`
	BusinessOwnerJid     *string          `protobuf:"bytes,2,opt,name=businessOwnerJid" json:"businessOwnerJid,omitempty"`
	ContextInfo          *ContextInfo     `protobuf:"bytes,17,opt,name=contextInfo" json:"contextInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *ProductMessage) Reset()         { *m = ProductMessage{} }
func (m *ProductMessage) String() string { return proto.CompactTextString(m) }
func (*ProductMessage) ProtoMessage()    {}
func (*ProductMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{42}
}

func (m *ProductMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ProductMessage.Unmarshal(m, b)
}
func (m *ProductMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ProductMessage.Marshal(b, m, deterministic)
}
func (m *ProductMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ProductMessage.Merge(m, src)
}
func (m *ProductMessage) XXX_Size() int {
	return xxx_messageInfo_ProductMessage.Size(m)
}
func (m *ProductMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_ProductMessage.DiscardUnknown(m)
}

var xxx_messageInfo_ProductMessage proto.InternalMessageInfo

func (m *ProductMessage) GetProduct() *ProductSnapshot {
	if m != nil {
		return m.Product
	}
	return nil
}

func (m *ProductMessage) GetBusinessOwnerJid() string {
	if m != nil && m.BusinessOwnerJid != nil {
		return *m.BusinessOwnerJid
	}
	return ""
}

func (m *ProductMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

type GroupInviteMessage struct {
	GroupJid             *string      `protobuf:"bytes,1,opt,name=groupJid" json:"groupJid,omitempty"`
	InviteCode           *string      `protobuf:"bytes,2,opt,name=inviteCode" json:"inviteCode,omitempty"`
	InviteExpiration     *int64       `protobuf:"varint,3,opt,name=inviteExpiration" json:"inviteExpiration,omitempty"`
	GroupName            *string      `protobuf:"bytes,4,opt,name=groupName" json:"groupName,omitempty"`
	JpegThumbnail        []byte       `protobuf:"bytes,5,opt,name=jpegThumbnail" json:"jpegThumbnail,omitempty"`
	Caption              *string      `protobuf:"bytes,6,opt,name=caption" json:"caption,omitempty"`
	ContextInfo          *ContextInfo `protobuf:"bytes,7,opt,name=contextInfo" json:"contextInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *GroupInviteMessage) Reset()         { *m = GroupInviteMessage{} }
func (m *GroupInviteMessage) String() string { return proto.CompactTextString(m) }
func (*GroupInviteMessage) ProtoMessage()    {}
func (*GroupInviteMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{43}
}

func (m *GroupInviteMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupInviteMessage.Unmarshal(m, b)
}
func (m *GroupInviteMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupInviteMessage.Marshal(b, m, deterministic)
}
func (m *GroupInviteMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupInviteMessage.Merge(m, src)
}
func (m *GroupInviteMessage) XXX_Size() int {
	return xxx_messageInfo_GroupInviteMessage.Size(m)
}
func (m *GroupInviteMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupInviteMessage.DiscardUnknown(m)
}

var xxx_messageInfo_GroupInviteMessage proto.InternalMessageInfo

func (m *GroupInviteMessage) GetGroupJid() string {
	if m != nil && m.GroupJid != nil {
		return *m.GroupJid
	}
	return ""
}

func (m *GroupInviteMessage) GetInviteCode() string {
	if m != nil && m.InviteCode != nil {
		return *m.InviteCode
	}
	return ""
}

func (m *GroupInviteMessage) GetInviteExpiration() int64 {
	if m != nil && m.InviteExpiration != nil {
		return *m.InviteExpiration
	}
	return 0
}

func (m *GroupInviteMessage) GetGroupName() string {
	if m != nil && m.GroupName != nil {
		return *m.GroupName
	}
	return ""
}

func (m *GroupInviteMessage) GetJpegThumbnail() []byte {
	if m != nil {
		return m.JpegThumbnail
	}
	return nil
}

func (m *GroupInviteMessage) GetCaption() string {
	if m != nil && m.Caption != nil {
		return *m.Caption
	}
	return ""
}

func (m *GroupInviteMessage) GetContextInfo() *ContextInfo {
	if m != nil {
		return m.ContextInfo
	}
	return nil
}

type DeviceSentMessage struct {
	DestinationJid       *string  `protobuf:"bytes,1,opt,name=destinationJid" json:"destinationJid,omitempty"`
	Message              *Message `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeviceSentMessage) Reset()         { *m = DeviceSentMessage{} }
func (m *DeviceSentMessage) String() string { return proto.CompactTextString(m) }
func (*DeviceSentMessage) ProtoMessage()    {}
func (*DeviceSentMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{44}
}

func (m *DeviceSentMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeviceSentMessage.Unmarshal(m, b)
}
func (m *DeviceSentMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeviceSentMessage.Marshal(b, m, deterministic)
}
func (m *DeviceSentMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeviceSentMessage.Merge(m, src)
}
func (m *DeviceSentMessage) XXX_Size() int {
	return xxx_messageInfo_DeviceSentMessage.Size(m)
}
func (m *DeviceSentMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_DeviceSentMessage.DiscardUnknown(m)
}

var xxx_messageInfo_DeviceSentMessage proto.InternalMessageInfo

func (m *DeviceSentMessage) GetDestinationJid() string {
	if m != nil && m.DestinationJid != nil {
		return *m.DestinationJid
	}
	return ""
}

func (m *DeviceSentMessage) GetMessage() *Message {
	if m != nil {
		return m.Message
	}
	return nil
}

type DeviceSyncMessage struct {
	SerializedXmlBytes   []byte   `protobuf:"bytes,1,opt,name=serializedXmlBytes" json:"serializedXmlBytes,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeviceSyncMessage) Reset()         { *m = DeviceSyncMessage{} }
func (m *DeviceSyncMessage) String() string { return proto.CompactTextString(m) }
func (*DeviceSyncMessage) ProtoMessage()    {}
func (*DeviceSyncMessage) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{45}
}

func (m *DeviceSyncMessage) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeviceSyncMessage.Unmarshal(m, b)
}
func (m *DeviceSyncMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeviceSyncMessage.Marshal(b, m, deterministic)
}
func (m *DeviceSyncMessage) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeviceSyncMessage.Merge(m, src)
}
func (m *DeviceSyncMessage) XXX_Size() int {
	return xxx_messageInfo_DeviceSyncMessage.Size(m)
}
func (m *DeviceSyncMessage) XXX_DiscardUnknown() {
	xxx_messageInfo_DeviceSyncMessage.DiscardUnknown(m)
}

var xxx_messageInfo_DeviceSyncMessage proto.InternalMessageInfo

func (m *DeviceSyncMessage) GetSerializedXmlBytes() []byte {
	if m != nil {
		return m.SerializedXmlBytes
	}
	return nil
}

type Message struct {
	Conversation                               *string                       `protobuf:"bytes,1,opt,name=conversation" json:"conversation,omitempty"`
	SenderKeyDistributionMessage               *SenderKeyDistributionMessage `protobuf:"bytes,2,opt,name=senderKeyDistributionMessage" json:"senderKeyDistributionMessage,omitempty"`
	ImageMessage                               *ImageMessage                 `protobuf:"bytes,3,opt,name=imageMessage" json:"imageMessage,omitempty"`
	ContactMessage                             *ContactMessage               `protobuf:"bytes,4,opt,name=contactMessage" json:"contactMessage,omitempty"`
	LocationMessage                            *LocationMessage              `protobuf:"bytes,5,opt,name=locationMessage" json:"locationMessage,omitempty"`
	ExtendedTextMessage                        *ExtendedTextMessage          `protobuf:"bytes,6,opt,name=extendedTextMessage" json:"extendedTextMessage,omitempty"`
	DocumentMessage                            *DocumentMessage              `protobuf:"bytes,7,opt,name=documentMessage" json:"documentMessage,omitempty"`
	AudioMessage                               *AudioMessage                 `protobuf:"bytes,8,opt,name=audioMessage" json:"audioMessage,omitempty"`
	VideoMessage                               *VideoMessage                 `protobuf:"bytes,9,opt,name=videoMessage" json:"videoMessage,omitempty"`
	Call                                       *Call                         `protobuf:"bytes,10,opt,name=call" json:"call,omitempty"`
	Chat                                       *Chat                         `protobuf:"bytes,11,opt,name=chat" json:"chat,omitempty"`
	ProtocolMessage                            *ProtocolMessage              `protobuf:"bytes,12,opt,name=protocolMessage" json:"protocolMessage,omitempty"`
	ContactsArrayMessage                       *ContactsArrayMessage         `protobuf:"bytes,13,opt,name=contactsArrayMessage" json:"contactsArrayMessage,omitempty"`
	HighlyStructuredMessage                    *HighlyStructuredMessage      `protobuf:"bytes,14,opt,name=highlyStructuredMessage" json:"highlyStructuredMessage,omitempty"`
	FastRatchetKeySenderKeyDistributionMessage *SenderKeyDistributionMessage `protobuf:"bytes,15,opt,name=fastRatchetKeySenderKeyDistributionMessage" json:"fastRatchetKeySenderKeyDistributionMessage,omitempty"`
	SendPaymentMessage                         *SendPaymentMessage           `protobuf:"bytes,16,opt,name=sendPaymentMessage" json:"sendPaymentMessage,omitempty"`
	LiveLocationMessage                        *LiveLocationMessage          `protobuf:"bytes,18,opt,name=liveLocationMessage" json:"liveLocationMessage,omitempty"`
	RequestPaymentMessage                      *RequestPaymentMessage        `protobuf:"bytes,22,opt,name=requestPaymentMessage" json:"requestPaymentMessage,omitempty"`
	DeclinePaymentRequestMessage               *DeclinePaymentRequestMessage `protobuf:"bytes,23,opt,name=declinePaymentRequestMessage" json:"declinePaymentRequestMessage,omitempty"`
	CancelPaymentRequestMessage                *CancelPaymentRequestMessage  `protobuf:"bytes,24,opt,name=cancelPaymentRequestMessage" json:"cancelPaymentRequestMessage,omitempty"`
	TemplateMessage                            *TemplateMessage              `protobuf:"bytes,25,opt,name=templateMessage" json:"templateMessage,omitempty"`
	StickerMessage                             *StickerMessage               `protobuf:"bytes,26,opt,name=stickerMessage" json:"stickerMessage,omitempty"`
	GroupInviteMessage                         *GroupInviteMessage           `protobuf:"bytes,28,opt,name=groupInviteMessage" json:"groupInviteMessage,omitempty"`
	TemplateButtonReplyMessage                 *TemplateButtonReplyMessage   `protobuf:"bytes,29,opt,name=templateButtonReplyMessage" json:"templateButtonReplyMessage,omitempty"`
	ProductMessage                             *ProductMessage               `protobuf:"bytes,30,opt,name=productMessage" json:"productMessage,omitempty"`
	DeviceSentMessage                          *DeviceSentMessage            `protobuf:"bytes,31,opt,name=deviceSentMessage" json:"deviceSentMessage,omitempty"`
	DeviceSyncMessage                          *DeviceSyncMessage            `protobuf:"bytes,32,opt,name=deviceSyncMessage" json:"deviceSyncMessage,omitempty"`
	XXX_NoUnkeyedLiteral                       struct{}                      `json:"-"`
	XXX_unrecognized                           []byte                        `json:"-"`
	XXX_sizecache                              int32                         `json:"-"`
}

func (m *Message) Reset()         { *m = Message{} }
func (m *Message) String() string { return proto.CompactTextString(m) }
func (*Message) ProtoMessage()    {}
func (*Message) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{46}
}

func (m *Message) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Message.Unmarshal(m, b)
}
func (m *Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Message.Marshal(b, m, deterministic)
}
func (m *Message) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Message.Merge(m, src)
}
func (m *Message) XXX_Size() int {
	return xxx_messageInfo_Message.Size(m)
}
func (m *Message) XXX_DiscardUnknown() {
	xxx_messageInfo_Message.DiscardUnknown(m)
}

var xxx_messageInfo_Message proto.InternalMessageInfo

func (m *Message) GetConversation() string {
	if m != nil && m.Conversation != nil {
		return *m.Conversation
	}
	return ""
}

func (m *Message) GetSenderKeyDistributionMessage() *SenderKeyDistributionMessage {
	if m != nil {
		return m.SenderKeyDistributionMessage
	}
	return nil
}

func (m *Message) GetImageMessage() *ImageMessage {
	if m != nil {
		return m.ImageMessage
	}
	return nil
}

func (m *Message) GetContactMessage() *ContactMessage {
	if m != nil {
		return m.ContactMessage
	}
	return nil
}

func (m *Message) GetLocationMessage() *LocationMessage {
	if m != nil {
		return m.LocationMessage
	}
	return nil
}

func (m *Message) GetExtendedTextMessage() *ExtendedTextMessage {
	if m != nil {
		return m.ExtendedTextMessage
	}
	return nil
}

func (m *Message) GetDocumentMessage() *DocumentMessage {
	if m != nil {
		return m.DocumentMessage
	}
	return nil
}

func (m *Message) GetAudioMessage() *AudioMessage {
	if m != nil {
		return m.AudioMessage
	}
	return nil
}

func (m *Message) GetVideoMessage() *VideoMessage {
	if m != nil {
		return m.VideoMessage
	}
	return nil
}

func (m *Message) GetCall() *Call {
	if m != nil {
		return m.Call
	}
	return nil
}

func (m *Message) GetChat() *Chat {
	if m != nil {
		return m.Chat
	}
	return nil
}

func (m *Message) GetProtocolMessage() *ProtocolMessage {
	if m != nil {
		return m.ProtocolMessage
	}
	return nil
}

func (m *Message) GetContactsArrayMessage() *ContactsArrayMessage {
	if m != nil {
		return m.ContactsArrayMessage
	}
	return nil
}

func (m *Message) GetHighlyStructuredMessage() *HighlyStructuredMessage {
	if m != nil {
		return m.HighlyStructuredMessage
	}
	return nil
}

func (m *Message) GetFastRatchetKeySenderKeyDistributionMessage() *SenderKeyDistributionMessage {
	if m != nil {
		return m.FastRatchetKeySenderKeyDistributionMessage
	}
	return nil
}

func (m *Message) GetSendPaymentMessage() *SendPaymentMessage {
	if m != nil {
		return m.SendPaymentMessage
	}
	return nil
}

func (m *Message) GetLiveLocationMessage() *LiveLocationMessage {
	if m != nil {
		return m.LiveLocationMessage
	}
	return nil
}

func (m *Message) GetRequestPaymentMessage() *RequestPaymentMessage {
	if m != nil {
		return m.RequestPaymentMessage
	}
	return nil
}

func (m *Message) GetDeclinePaymentRequestMessage() *DeclinePaymentRequestMessage {
	if m != nil {
		return m.DeclinePaymentRequestMessage
	}
	return nil
}

func (m *Message) GetCancelPaymentRequestMessage() *CancelPaymentRequestMessage {
	if m != nil {
		return m.CancelPaymentRequestMessage
	}
	return nil
}

func (m *Message) GetTemplateMessage() *TemplateMessage {
	if m != nil {
		return m.TemplateMessage
	}
	return nil
}

func (m *Message) GetStickerMessage() *StickerMessage {
	if m != nil {
		return m.StickerMessage
	}
	return nil
}

func (m *Message) GetGroupInviteMessage() *GroupInviteMessage {
	if m != nil {
		return m.GroupInviteMessage
	}
	return nil
}

func (m *Message) GetTemplateButtonReplyMessage() *TemplateButtonReplyMessage {
	if m != nil {
		return m.TemplateButtonReplyMessage
	}
	return nil
}

func (m *Message) GetProductMessage() *ProductMessage {
	if m != nil {
		return m.ProductMessage
	}
	return nil
}

func (m *Message) GetDeviceSentMessage() *DeviceSentMessage {
	if m != nil {
		return m.DeviceSentMessage
	}
	return nil
}

func (m *Message) GetDeviceSyncMessage() *DeviceSyncMessage {
	if m != nil {
		return m.DeviceSyncMessage
	}
	return nil
}

type MessageKey struct {
	RemoteJid            *string  `protobuf:"bytes,1,opt,name=remoteJid" json:"remoteJid,omitempty"`
	FromMe               *bool    `protobuf:"varint,2,opt,name=fromMe" json:"fromMe,omitempty"`
	Id                   *string  `protobuf:"bytes,3,opt,name=id" json:"id,omitempty"`
	Participant          *string  `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *MessageKey) Reset()         { *m = MessageKey{} }
func (m *MessageKey) String() string { return proto.CompactTextString(m) }
func (*MessageKey) ProtoMessage()    {}
func (*MessageKey) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{47}
}

func (m *MessageKey) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MessageKey.Unmarshal(m, b)
}
func (m *MessageKey) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MessageKey.Marshal(b, m, deterministic)
}
func (m *MessageKey) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MessageKey.Merge(m, src)
}
func (m *MessageKey) XXX_Size() int {
	return xxx_messageInfo_MessageKey.Size(m)
}
func (m *MessageKey) XXX_DiscardUnknown() {
	xxx_messageInfo_MessageKey.DiscardUnknown(m)
}

var xxx_messageInfo_MessageKey proto.InternalMessageInfo

func (m *MessageKey) GetRemoteJid() string {
	if m != nil && m.RemoteJid != nil {
		return *m.RemoteJid
	}
	return ""
}

func (m *MessageKey) GetFromMe() bool {
	if m != nil && m.FromMe != nil {
		return *m.FromMe
	}
	return false
}

func (m *MessageKey) GetId() string {
	if m != nil && m.Id != nil {
		return *m.Id
	}
	return ""
}

func (m *MessageKey) GetParticipant() string {
	if m != nil && m.Participant != nil {
		return *m.Participant
	}
	return ""
}

type WebFeatures struct {
	LabelsDisplay                *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,1,opt,name=labelsDisplay,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"labelsDisplay,omitempty"`
	VoipIndividualOutgoing       *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,2,opt,name=voipIndividualOutgoing,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"voipIndividualOutgoing,omitempty"`
	GroupsV3                     *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,3,opt,name=groupsV3,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"groupsV3,omitempty"`
	GroupsV3Create               *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,4,opt,name=groupsV3Create,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"groupsV3Create,omitempty"`
	ChangeNumberV2               *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,5,opt,name=changeNumberV2,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"changeNumberV2,omitempty"`
	QueryStatusV3Thumbnail       *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,6,opt,name=queryStatusV3Thumbnail,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"queryStatusV3Thumbnail,omitempty"`
	LiveLocations                *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,7,opt,name=liveLocations,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"liveLocations,omitempty"`
	QueryVname                   *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,8,opt,name=queryVname,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"queryVname,omitempty"`
	VoipIndividualIncoming       *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,9,opt,name=voipIndividualIncoming,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"voipIndividualIncoming,omitempty"`
	QuickRepliesQuery            *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,10,opt,name=quickRepliesQuery,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"quickRepliesQuery,omitempty"`
	Payments                     *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,11,opt,name=payments,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"payments,omitempty"`
	StickerPackQuery             *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,12,opt,name=stickerPackQuery,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"stickerPackQuery,omitempty"`
	LiveLocationsFinal           *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,13,opt,name=liveLocationsFinal,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"liveLocationsFinal,omitempty"`
	LabelsEdit                   *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,14,opt,name=labelsEdit,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"labelsEdit,omitempty"`
	MediaUpload                  *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,15,opt,name=mediaUpload,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"mediaUpload,omitempty"`
	MediaUploadRichQuickReplies  *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,18,opt,name=mediaUploadRichQuickReplies,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"mediaUploadRichQuickReplies,omitempty"`
	VnameV2                      *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,19,opt,name=vnameV2,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"vnameV2,omitempty"`
	VideoPlaybackUrl             *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,20,opt,name=videoPlaybackUrl,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"videoPlaybackUrl,omitempty"`
	StatusRanking                *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,21,opt,name=statusRanking,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"statusRanking,omitempty"`
	VoipIndividualVideo          *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,22,opt,name=voipIndividualVideo,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"voipIndividualVideo,omitempty"`
	ThirdPartyStickers           *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,23,opt,name=thirdPartyStickers,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"thirdPartyStickers,omitempty"`
	FrequentlyForwardedSetting   *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,24,opt,name=frequentlyForwardedSetting,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"frequentlyForwardedSetting,omitempty"`
	GroupsV4JoinPermission       *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,25,opt,name=groupsV4JoinPermission,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"groupsV4JoinPermission,omitempty"`
	RecentStickers               *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,26,opt,name=recentStickers,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"recentStickers,omitempty"`
	Catalog                      *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,27,opt,name=catalog,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"catalog,omitempty"`
	StarredStickers              *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,28,opt,name=starredStickers,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"starredStickers,omitempty"`
	VoipGroupCall                *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,29,opt,name=voipGroupCall,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"voipGroupCall,omitempty"`
	TemplateMessage              *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,30,opt,name=templateMessage,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"templateMessage,omitempty"`
	TemplateMessageInteractivity *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,31,opt,name=templateMessageInteractivity,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"templateMessageInteractivity,omitempty"`
	EphemeralMessages            *WebFeatures_WEB_FEATURES_FLAG `protobuf:"varint,32,opt,name=ephemeralMessages,enum=proto.WebFeatures_WEB_FEATURES_FLAG" json:"ephemeralMessages,omitempty"`
	XXX_NoUnkeyedLiteral         struct{}                       `json:"-"`
	XXX_unrecognized             []byte                         `json:"-"`
	XXX_sizecache                int32                          `json:"-"`
}

func (m *WebFeatures) Reset()         { *m = WebFeatures{} }
func (m *WebFeatures) String() string { return proto.CompactTextString(m) }
func (*WebFeatures) ProtoMessage()    {}
func (*WebFeatures) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{48}
}

func (m *WebFeatures) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_WebFeatures.Unmarshal(m, b)
}
func (m *WebFeatures) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_WebFeatures.Marshal(b, m, deterministic)
}
func (m *WebFeatures) XXX_Merge(src proto.Message) {
	xxx_messageInfo_WebFeatures.Merge(m, src)
}
func (m *WebFeatures) XXX_Size() int {
	return xxx_messageInfo_WebFeatures.Size(m)
}
func (m *WebFeatures) XXX_DiscardUnknown() {
	xxx_messageInfo_WebFeatures.DiscardUnknown(m)
}

var xxx_messageInfo_WebFeatures proto.InternalMessageInfo

func (m *WebFeatures) GetLabelsDisplay() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.LabelsDisplay != nil {
		return *m.LabelsDisplay
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetVoipIndividualOutgoing() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.VoipIndividualOutgoing != nil {
		return *m.VoipIndividualOutgoing
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetGroupsV3() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.GroupsV3 != nil {
		return *m.GroupsV3
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetGroupsV3Create() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.GroupsV3Create != nil {
		return *m.GroupsV3Create
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetChangeNumberV2() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.ChangeNumberV2 != nil {
		return *m.ChangeNumberV2
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetQueryStatusV3Thumbnail() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.QueryStatusV3Thumbnail != nil {
		return *m.QueryStatusV3Thumbnail
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetLiveLocations() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.LiveLocations != nil {
		return *m.LiveLocations
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetQueryVname() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.QueryVname != nil {
		return *m.QueryVname
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetVoipIndividualIncoming() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.VoipIndividualIncoming != nil {
		return *m.VoipIndividualIncoming
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetQuickRepliesQuery() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.QuickRepliesQuery != nil {
		return *m.QuickRepliesQuery
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetPayments() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.Payments != nil {
		return *m.Payments
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetStickerPackQuery() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.StickerPackQuery != nil {
		return *m.StickerPackQuery
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetLiveLocationsFinal() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.LiveLocationsFinal != nil {
		return *m.LiveLocationsFinal
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetLabelsEdit() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.LabelsEdit != nil {
		return *m.LabelsEdit
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetMediaUpload() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.MediaUpload != nil {
		return *m.MediaUpload
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetMediaUploadRichQuickReplies() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.MediaUploadRichQuickReplies != nil {
		return *m.MediaUploadRichQuickReplies
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetVnameV2() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.VnameV2 != nil {
		return *m.VnameV2
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetVideoPlaybackUrl() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.VideoPlaybackUrl != nil {
		return *m.VideoPlaybackUrl
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetStatusRanking() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.StatusRanking != nil {
		return *m.StatusRanking
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetVoipIndividualVideo() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.VoipIndividualVideo != nil {
		return *m.VoipIndividualVideo
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetThirdPartyStickers() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.ThirdPartyStickers != nil {
		return *m.ThirdPartyStickers
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetFrequentlyForwardedSetting() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.FrequentlyForwardedSetting != nil {
		return *m.FrequentlyForwardedSetting
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetGroupsV4JoinPermission() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.GroupsV4JoinPermission != nil {
		return *m.GroupsV4JoinPermission
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetRecentStickers() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.RecentStickers != nil {
		return *m.RecentStickers
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetCatalog() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.Catalog != nil {
		return *m.Catalog
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetStarredStickers() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.StarredStickers != nil {
		return *m.StarredStickers
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetVoipGroupCall() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.VoipGroupCall != nil {
		return *m.VoipGroupCall
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetTemplateMessage() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.TemplateMessage != nil {
		return *m.TemplateMessage
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetTemplateMessageInteractivity() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.TemplateMessageInteractivity != nil {
		return *m.TemplateMessageInteractivity
	}
	return WebFeatures_NOT_STARTED
}

func (m *WebFeatures) GetEphemeralMessages() WebFeatures_WEB_FEATURES_FLAG {
	if m != nil && m.EphemeralMessages != nil {
		return *m.EphemeralMessages
	}
	return WebFeatures_NOT_STARTED
}

type TabletNotificationsInfo struct {
	Timestamp            *uint64                    `protobuf:"varint,2,opt,name=timestamp" json:"timestamp,omitempty"`
	UnreadChats          *uint32                    `protobuf:"varint,3,opt,name=unreadChats" json:"unreadChats,omitempty"`
	NotifyMessageCount   *uint32                    `protobuf:"varint,4,opt,name=notifyMessageCount" json:"notifyMessageCount,omitempty"`
	NotifyMessage        []*NotificationMessageInfo `protobuf:"bytes,5,rep,name=notifyMessage" json:"notifyMessage,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                   `json:"-"`
	XXX_unrecognized     []byte                     `json:"-"`
	XXX_sizecache        int32                      `json:"-"`
}

func (m *TabletNotificationsInfo) Reset()         { *m = TabletNotificationsInfo{} }
func (m *TabletNotificationsInfo) String() string { return proto.CompactTextString(m) }
func (*TabletNotificationsInfo) ProtoMessage()    {}
func (*TabletNotificationsInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{49}
}

func (m *TabletNotificationsInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TabletNotificationsInfo.Unmarshal(m, b)
}
func (m *TabletNotificationsInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TabletNotificationsInfo.Marshal(b, m, deterministic)
}
func (m *TabletNotificationsInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TabletNotificationsInfo.Merge(m, src)
}
func (m *TabletNotificationsInfo) XXX_Size() int {
	return xxx_messageInfo_TabletNotificationsInfo.Size(m)
}
func (m *TabletNotificationsInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_TabletNotificationsInfo.DiscardUnknown(m)
}

var xxx_messageInfo_TabletNotificationsInfo proto.InternalMessageInfo

func (m *TabletNotificationsInfo) GetTimestamp() uint64 {
	if m != nil && m.Timestamp != nil {
		return *m.Timestamp
	}
	return 0
}

func (m *TabletNotificationsInfo) GetUnreadChats() uint32 {
	if m != nil && m.UnreadChats != nil {
		return *m.UnreadChats
	}
	return 0
}

func (m *TabletNotificationsInfo) GetNotifyMessageCount() uint32 {
	if m != nil && m.NotifyMessageCount != nil {
		return *m.NotifyMessageCount
	}
	return 0
}

func (m *TabletNotificationsInfo) GetNotifyMessage() []*NotificationMessageInfo {
	if m != nil {
		return m.NotifyMessage
	}
	return nil
}

type NotificationMessageInfo struct {
	Key                  *MessageKey `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
	Message              *Message    `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
	MessageTimestamp     *uint64     `protobuf:"varint,3,opt,name=messageTimestamp" json:"messageTimestamp,omitempty"`
	Participant          *string     `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *NotificationMessageInfo) Reset()         { *m = NotificationMessageInfo{} }
func (m *NotificationMessageInfo) String() string { return proto.CompactTextString(m) }
func (*NotificationMessageInfo) ProtoMessage()    {}
func (*NotificationMessageInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{50}
}

func (m *NotificationMessageInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_NotificationMessageInfo.Unmarshal(m, b)
}
func (m *NotificationMessageInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_NotificationMessageInfo.Marshal(b, m, deterministic)
}
func (m *NotificationMessageInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_NotificationMessageInfo.Merge(m, src)
}
func (m *NotificationMessageInfo) XXX_Size() int {
	return xxx_messageInfo_NotificationMessageInfo.Size(m)
}
func (m *NotificationMessageInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_NotificationMessageInfo.DiscardUnknown(m)
}

var xxx_messageInfo_NotificationMessageInfo proto.InternalMessageInfo

func (m *NotificationMessageInfo) GetKey() *MessageKey {
	if m != nil {
		return m.Key
	}
	return nil
}

func (m *NotificationMessageInfo) GetMessage() *Message {
	if m != nil {
		return m.Message
	}
	return nil
}

func (m *NotificationMessageInfo) GetMessageTimestamp() uint64 {
	if m != nil && m.MessageTimestamp != nil {
		return *m.MessageTimestamp
	}
	return 0
}

func (m *NotificationMessageInfo) GetParticipant() string {
	if m != nil && m.Participant != nil {
		return *m.Participant
	}
	return ""
}

type WebNotificationsInfo struct {
	Timestamp            *uint64           `protobuf:"varint,2,opt,name=timestamp" json:"timestamp,omitempty"`
	UnreadChats          *uint32           `protobuf:"varint,3,opt,name=unreadChats" json:"unreadChats,omitempty"`
	NotifyMessageCount   *uint32           `protobuf:"varint,4,opt,name=notifyMessageCount" json:"notifyMessageCount,omitempty"`
	NotifyMessages       []*WebMessageInfo `protobuf:"bytes,5,rep,name=notifyMessages" json:"notifyMessages,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *WebNotificationsInfo) Reset()         { *m = WebNotificationsInfo{} }
func (m *WebNotificationsInfo) String() string { return proto.CompactTextString(m) }
func (*WebNotificationsInfo) ProtoMessage()    {}
func (*WebNotificationsInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{51}
}

func (m *WebNotificationsInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_WebNotificationsInfo.Unmarshal(m, b)
}
func (m *WebNotificationsInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_WebNotificationsInfo.Marshal(b, m, deterministic)
}
func (m *WebNotificationsInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_WebNotificationsInfo.Merge(m, src)
}
func (m *WebNotificationsInfo) XXX_Size() int {
	return xxx_messageInfo_WebNotificationsInfo.Size(m)
}
func (m *WebNotificationsInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_WebNotificationsInfo.DiscardUnknown(m)
}

var xxx_messageInfo_WebNotificationsInfo proto.InternalMessageInfo

func (m *WebNotificationsInfo) GetTimestamp() uint64 {
	if m != nil && m.Timestamp != nil {
		return *m.Timestamp
	}
	return 0
}

func (m *WebNotificationsInfo) GetUnreadChats() uint32 {
	if m != nil && m.UnreadChats != nil {
		return *m.UnreadChats
	}
	return 0
}

func (m *WebNotificationsInfo) GetNotifyMessageCount() uint32 {
	if m != nil && m.NotifyMessageCount != nil {
		return *m.NotifyMessageCount
	}
	return 0
}

func (m *WebNotificationsInfo) GetNotifyMessages() []*WebMessageInfo {
	if m != nil {
		return m.NotifyMessages
	}
	return nil
}

type PaymentInfo struct {
	Amount1000           *uint64                          `protobuf:"varint,2,opt,name=amount1000" json:"amount1000,omitempty"`
	ReceiverJid          *string                          `protobuf:"bytes,3,opt,name=receiverJid" json:"receiverJid,omitempty"`
	Status               *PaymentInfo_PAYMENT_INFO_STATUS `protobuf:"varint,4,opt,name=status,enum=proto.PaymentInfo_PAYMENT_INFO_STATUS" json:"status,omitempty"`
	TransactionTimestamp *uint64                          `protobuf:"varint,5,opt,name=transactionTimestamp" json:"transactionTimestamp,omitempty"`
	RequestMessageKey    *MessageKey                      `protobuf:"bytes,6,opt,name=requestMessageKey" json:"requestMessageKey,omitempty"`
	ExpiryTimestamp      *uint64                          `protobuf:"varint,7,opt,name=expiryTimestamp" json:"expiryTimestamp,omitempty"`
	Futureproofed        *bool                            `protobuf:"varint,8,opt,name=futureproofed" json:"futureproofed,omitempty"`
	Currency             *string                          `protobuf:"bytes,9,opt,name=currency" json:"currency,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
	XXX_unrecognized     []byte                           `json:"-"`
	XXX_sizecache        int32                            `json:"-"`
}

func (m *PaymentInfo) Reset()         { *m = PaymentInfo{} }
func (m *PaymentInfo) String() string { return proto.CompactTextString(m) }
func (*PaymentInfo) ProtoMessage()    {}
func (*PaymentInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{52}
}

func (m *PaymentInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PaymentInfo.Unmarshal(m, b)
}
func (m *PaymentInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PaymentInfo.Marshal(b, m, deterministic)
}
func (m *PaymentInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PaymentInfo.Merge(m, src)
}
func (m *PaymentInfo) XXX_Size() int {
	return xxx_messageInfo_PaymentInfo.Size(m)
}
func (m *PaymentInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_PaymentInfo.DiscardUnknown(m)
}

var xxx_messageInfo_PaymentInfo proto.InternalMessageInfo

func (m *PaymentInfo) GetAmount1000() uint64 {
	if m != nil && m.Amount1000 != nil {
		return *m.Amount1000
	}
	return 0
}

func (m *PaymentInfo) GetReceiverJid() string {
	if m != nil && m.ReceiverJid != nil {
		return *m.ReceiverJid
	}
	return ""
}

func (m *PaymentInfo) GetStatus() PaymentInfo_PAYMENT_INFO_STATUS {
	if m != nil && m.Status != nil {
		return *m.Status
	}
	return PaymentInfo_UNKNOWN_STATUS
}

func (m *PaymentInfo) GetTransactionTimestamp() uint64 {
	if m != nil && m.TransactionTimestamp != nil {
		return *m.TransactionTimestamp
	}
	return 0
}

func (m *PaymentInfo) GetRequestMessageKey() *MessageKey {
	if m != nil {
		return m.RequestMessageKey
	}
	return nil
}

func (m *PaymentInfo) GetExpiryTimestamp() uint64 {
	if m != nil && m.ExpiryTimestamp != nil {
		return *m.ExpiryTimestamp
	}
	return 0
}

func (m *PaymentInfo) GetFutureproofed() bool {
	if m != nil && m.Futureproofed != nil {
		return *m.Futureproofed
	}
	return false
}

func (m *PaymentInfo) GetCurrency() string {
	if m != nil && m.Currency != nil {
		return *m.Currency
	}
	return ""
}

type WebMessageInfo struct {
	Key                     *MessageKey                               `protobuf:"bytes,1,req,name=key" json:"key,omitempty"`
	Message                 *Message                                  `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
	MessageTimestamp        *uint64                                   `protobuf:"varint,3,opt,name=messageTimestamp" json:"messageTimestamp,omitempty"`
	Status                  *WebMessageInfo_WEB_MESSAGE_INFO_STATUS   `protobuf:"varint,4,opt,name=status,enum=proto.WebMessageInfo_WEB_MESSAGE_INFO_STATUS" json:"status,omitempty"`
	Participant             *string                                   `protobuf:"bytes,5,opt,name=participant" json:"participant,omitempty"`
	Ignore                  *bool                                     `protobuf:"varint,16,opt,name=ignore" json:"ignore,omitempty"`
	Starred                 *bool                                     `protobuf:"varint,17,opt,name=starred" json:"starred,omitempty"`
	Broadcast               *bool                                     `protobuf:"varint,18,opt,name=broadcast" json:"broadcast,omitempty"`
	PushName                *string                                   `protobuf:"bytes,19,opt,name=pushName" json:"pushName,omitempty"`
	MediaCiphertextSha256   []byte                                    `protobuf:"bytes,20,opt,name=mediaCiphertextSha256" json:"mediaCiphertextSha256,omitempty"`
	Multicast               *bool                                     `protobuf:"varint,21,opt,name=multicast" json:"multicast,omitempty"`
	UrlText                 *bool                                     `protobuf:"varint,22,opt,name=urlText" json:"urlText,omitempty"`
	UrlNumber               *bool                                     `protobuf:"varint,23,opt,name=urlNumber" json:"urlNumber,omitempty"`
	MessageStubType         *WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE `protobuf:"varint,24,opt,name=messageStubType,enum=proto.WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE" json:"messageStubType,omitempty"`
	ClearMedia              *bool                                     `protobuf:"varint,25,opt,name=clearMedia" json:"clearMedia,omitempty"`
	MessageStubParameters   []string                                  `protobuf:"bytes,26,rep,name=messageStubParameters" json:"messageStubParameters,omitempty"`
	Duration                *uint32                                   `protobuf:"varint,27,opt,name=duration" json:"duration,omitempty"`
	Labels                  []string                                  `protobuf:"bytes,28,rep,name=labels" json:"labels,omitempty"`
	PaymentInfo             *PaymentInfo                              `protobuf:"bytes,29,opt,name=paymentInfo" json:"paymentInfo,omitempty"`
	FinalLiveLocation       *LiveLocationMessage                      `protobuf:"bytes,30,opt,name=finalLiveLocation" json:"finalLiveLocation,omitempty"`
	QuotedPaymentInfo       *PaymentInfo                              `protobuf:"bytes,31,opt,name=quotedPaymentInfo" json:"quotedPaymentInfo,omitempty"`
	EphemeralStartTimestamp *uint64                                   `protobuf:"varint,32,opt,name=ephemeralStartTimestamp" json:"ephemeralStartTimestamp,omitempty"`
	EphemeralDuration       *uint32                                   `protobuf:"varint,33,opt,name=ephemeralDuration" json:"ephemeralDuration,omitempty"`
	XXX_NoUnkeyedLiteral    struct{}                                  `json:"-"`
	XXX_unrecognized        []byte                                    `json:"-"`
	XXX_sizecache           int32                                     `json:"-"`
}

func (m *WebMessageInfo) Reset()         { *m = WebMessageInfo{} }
func (m *WebMessageInfo) String() string { return proto.CompactTextString(m) }
func (*WebMessageInfo) ProtoMessage()    {}
func (*WebMessageInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_76fb0470a3b910d8, []int{53}
}

func (m *WebMessageInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_WebMessageInfo.Unmarshal(m, b)
}
func (m *WebMessageInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_WebMessageInfo.Marshal(b, m, deterministic)
}
func (m *WebMessageInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_WebMessageInfo.Merge(m, src)
}
func (m *WebMessageInfo) XXX_Size() int {
	return xxx_messageInfo_WebMessageInfo.Size(m)
}
func (m *WebMessageInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_WebMessageInfo.DiscardUnknown(m)
}

var xxx_messageInfo_WebMessageInfo proto.InternalMessageInfo

func (m *WebMessageInfo) GetKey() *MessageKey {
	if m != nil {
		return m.Key
	}
	return nil
}

func (m *WebMessageInfo) GetMessage() *Message {
	if m != nil {
		return m.Message
	}
	return nil
}

func (m *WebMessageInfo) GetMessageTimestamp() uint64 {
	if m != nil && m.MessageTimestamp != nil {
		return *m.MessageTimestamp
	}
	return 0
}

func (m *WebMessageInfo) GetStatus() WebMessageInfo_WEB_MESSAGE_INFO_STATUS {
	if m != nil && m.Status != nil {
		return *m.Status
	}
	return WebMessageInfo_ERROR
}

func (m *WebMessageInfo) GetParticipant() string {
	if m != nil && m.Participant != nil {
		return *m.Participant
	}
	return ""
}

func (m *WebMessageInfo) GetIgnore() bool {
	if m != nil && m.Ignore != nil {
		return *m.Ignore
	}
	return false
}

func (m *WebMessageInfo) GetStarred() bool {
	if m != nil && m.Starred != nil {
		return *m.Starred
	}
	return false
}

func (m *WebMessageInfo) GetBroadcast() bool {
	if m != nil && m.Broadcast != nil {
		return *m.Broadcast
	}
	return false
}

func (m *WebMessageInfo) GetPushName() string {
	if m != nil && m.PushName != nil {
		return *m.PushName
	}
	return ""
}

func (m *WebMessageInfo) GetMediaCiphertextSha256() []byte {
	if m != nil {
		return m.MediaCiphertextSha256
	}
	return nil
}

func (m *WebMessageInfo) GetMulticast() bool {
	if m != nil && m.Multicast != nil {
		return *m.Multicast
	}
	return false
}

func (m *WebMessageInfo) GetUrlText() bool {
	if m != nil && m.UrlText != nil {
		return *m.UrlText
	}
	return false
}

func (m *WebMessageInfo) GetUrlNumber() bool {
	if m != nil && m.UrlNumber != nil {
		return *m.UrlNumber
	}
	return false
}

func (m *WebMessageInfo) GetMessageStubType() WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE {
	if m != nil && m.MessageStubType != nil {
		return *m.MessageStubType
	}
	return WebMessageInfo_UNKNOWN
}

func (m *WebMessageInfo) GetClearMedia() bool {
	if m != nil && m.ClearMedia != nil {
		return *m.ClearMedia
	}
	return false
}

func (m *WebMessageInfo) GetMessageStubParameters() []string {
	if m != nil {
		return m.MessageStubParameters
	}
	return nil
}

func (m *WebMessageInfo) GetDuration() uint32 {
	if m != nil && m.Duration != nil {
		return *m.Duration
	}
	return 0
}

func (m *WebMessageInfo) GetLabels() []string {
	if m != nil {
		return m.Labels
	}
	return nil
}

func (m *WebMessageInfo) GetPaymentInfo() *PaymentInfo {
	if m != nil {
		return m.PaymentInfo
	}
	return nil
}

func (m *WebMessageInfo) GetFinalLiveLocation() *LiveLocationMessage {
	if m != nil {
		return m.FinalLiveLocation
	}
	return nil
}

func (m *WebMessageInfo) GetQuotedPaymentInfo() *PaymentInfo {
	if m != nil {
		return m.QuotedPaymentInfo
	}
	return nil
}

func (m *WebMessageInfo) GetEphemeralStartTimestamp() uint64 {
	if m != nil && m.EphemeralStartTimestamp != nil {
		return *m.EphemeralStartTimestamp
	}
	return 0
}

func (m *WebMessageInfo) GetEphemeralDuration() uint32 {
	if m != nil && m.EphemeralDuration != nil {
		return *m.EphemeralDuration
	}
	return 0
}

func init() {
	proto.RegisterEnum("proto.AdReplyInfo_AD_REPLY_INFO_MEDIATYPE", AdReplyInfo_AD_REPLY_INFO_MEDIATYPE_name, AdReplyInfo_AD_REPLY_INFO_MEDIATYPE_value)
	proto.RegisterEnum("proto.ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE", ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE_name, ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_FONTTYPE_value)
	proto.RegisterEnum("proto.ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE", ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE_name, ExtendedTextMessage_EXTENDED_TEXT_MESSAGE_PREVIEWTYPE_value)
	proto.RegisterEnum("proto.VideoMessage_VIDEO_MESSAGE_ATTRIBUTION", VideoMessage_VIDEO_MESSAGE_ATTRIBUTION_name, VideoMessage_VIDEO_MESSAGE_ATTRIBUTION_value)
	proto.RegisterEnum("proto.ProtocolMessage_PROTOCOL_MESSAGE_TYPE", ProtocolMessage_PROTOCOL_MESSAGE_TYPE_name, ProtocolMessage_PROTOCOL_MESSAGE_TYPE_value)
	proto.RegisterEnum("proto.HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE", HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE_name, HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_DAYOFWEEKTYPE_value)
	proto.RegisterEnum("proto.HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE", HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE_name, HSMDateTimeComponent_HSM_DATE_TIME_COMPONENT_CALENDARTYPE_value)
	proto.RegisterEnum("proto.WebFeatures_WEB_FEATURES_FLAG", WebFeatures_WEB_FEATURES_FLAG_name, WebFeatures_WEB_FEATURES_FLAG_value)
	proto.RegisterEnum("proto.PaymentInfo_PAYMENT_INFO_STATUS", PaymentInfo_PAYMENT_INFO_STATUS_name, PaymentInfo_PAYMENT_INFO_STATUS_value)
	proto.RegisterEnum("proto.WebMessageInfo_WEB_MESSAGE_INFO_STATUS", WebMessageInfo_WEB_MESSAGE_INFO_STATUS_name, WebMessageInfo_WEB_MESSAGE_INFO_STATUS_value)
	proto.RegisterEnum("proto.WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE", WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE_name, WebMessageInfo_WEB_MESSAGE_INFO_STUBTYPE_value)
	proto.RegisterType((*HydratedQuickReplyButton)(nil), "proto.HydratedQuickReplyButton")
	proto.RegisterType((*HydratedURLButton)(nil), "proto.HydratedURLButton")
	proto.RegisterType((*HydratedCallButton)(nil), "proto.HydratedCallButton")
	proto.RegisterType((*HydratedTemplateButton)(nil), "proto.HydratedTemplateButton")
	proto.RegisterType((*QuickReplyButton)(nil), "proto.QuickReplyButton")
	proto.RegisterType((*URLButton)(nil), "proto.URLButton")
	proto.RegisterType((*CallButton)(nil), "proto.CallButton")
	proto.RegisterType((*TemplateButton)(nil), "proto.TemplateButton")
	proto.RegisterType((*Location)(nil), "proto.Location")
	proto.RegisterType((*Point)(nil), "proto.Point")
	proto.RegisterType((*InteractiveAnnotation)(nil), "proto.InteractiveAnnotation")
	proto.RegisterType((*AdReplyInfo)(nil), "proto.AdReplyInfo")
	proto.RegisterType((*ContextInfo)(nil), "proto.ContextInfo")
	proto.RegisterType((*SenderKeyDistributionMessage)(nil), "proto.SenderKeyDistributionMessage")
	proto.RegisterType((*ImageMessage)(nil), "proto.ImageMessage")
	proto.RegisterType((*ContactMessage)(nil), "proto.ContactMessage")
	proto.RegisterType((*LocationMessage)(nil), "proto.LocationMessage")
	proto.RegisterType((*ExtendedTextMessage)(nil), "proto.ExtendedTextMessage")
	proto.RegisterType((*DocumentMessage)(nil), "proto.DocumentMessage")
	proto.RegisterType((*AudioMessage)(nil), "proto.AudioMessage")
	proto.RegisterType((*VideoMessage)(nil), "proto.VideoMessage")
	proto.RegisterType((*Call)(nil), "proto.Call")
	proto.RegisterType((*Chat)(nil), "proto.Chat")
	proto.RegisterType((*ProtocolMessage)(nil), "proto.ProtocolMessage")
	proto.RegisterType((*ContactsArrayMessage)(nil), "proto.ContactsArrayMessage")
	proto.RegisterType((*HSMCurrency)(nil), "proto.HSMCurrency")
	proto.RegisterType((*HSMDateTimeComponent)(nil), "proto.HSMDateTimeComponent")
	proto.RegisterType((*HSMDateTimeUnixEpoch)(nil), "proto.HSMDateTimeUnixEpoch")
	proto.RegisterType((*HSMDateTime)(nil), "proto.HSMDateTime")
	proto.RegisterType((*HSMLocalizableParameter)(nil), "proto.HSMLocalizableParameter")
	proto.RegisterType((*HighlyStructuredMessage)(nil), "proto.HighlyStructuredMessage")
	proto.RegisterType((*SendPaymentMessage)(nil), "proto.SendPaymentMessage")
	proto.RegisterType((*RequestPaymentMessage)(nil), "proto.RequestPaymentMessage")
	proto.RegisterType((*DeclinePaymentRequestMessage)(nil), "proto.DeclinePaymentRequestMessage")
	proto.RegisterType((*CancelPaymentRequestMessage)(nil), "proto.CancelPaymentRequestMessage")
	proto.RegisterType((*LiveLocationMessage)(nil), "proto.LiveLocationMessage")
	proto.RegisterType((*StickerMessage)(nil), "proto.StickerMessage")
	proto.RegisterType((*FourRowTemplate)(nil), "proto.FourRowTemplate")
	proto.RegisterType((*HydratedFourRowTemplate)(nil), "proto.HydratedFourRowTemplate")
	proto.RegisterType((*TemplateMessage)(nil), "proto.TemplateMessage")
	proto.RegisterType((*TemplateButtonReplyMessage)(nil), "proto.TemplateButtonReplyMessage")
	proto.RegisterType((*ProductSnapshot)(nil), "proto.ProductSnapshot")
	proto.RegisterType((*ProductMessage)(nil), "proto.ProductMessage")
	proto.RegisterType((*GroupInviteMessage)(nil), "proto.GroupInviteMessage")
	proto.RegisterType((*DeviceSentMessage)(nil), "proto.DeviceSentMessage")
	proto.RegisterType((*DeviceSyncMessage)(nil), "proto.DeviceSyncMessage")
	proto.RegisterType((*Message)(nil), "proto.Message")
	proto.RegisterType((*MessageKey)(nil), "proto.MessageKey")
	proto.RegisterType((*WebFeatures)(nil), "proto.WebFeatures")
	proto.RegisterType((*TabletNotificationsInfo)(nil), "proto.TabletNotificationsInfo")
	proto.RegisterType((*NotificationMessageInfo)(nil), "proto.NotificationMessageInfo")
	proto.RegisterType((*WebNotificationsInfo)(nil), "proto.WebNotificationsInfo")
	proto.RegisterType((*PaymentInfo)(nil), "proto.PaymentInfo")
	proto.RegisterType((*WebMessageInfo)(nil), "proto.WebMessageInfo")
}

func init() { proto.RegisterFile("def.proto", fileDescriptor_76fb0470a3b910d8) }

var fileDescriptor_76fb0470a3b910d8 = []byte{
	// 6235 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x7b, 0x4b, 0x6f, 0x1c, 0x49,
	0x72, 0x30, 0x9b, 0xcf, 0x66, 0x34, 0x1f, 0xc5, 0xa4, 0x28, 0xf6, 0x48, 0x1a, 0x0d, 0xa7, 0x67,
	0x76, 0x96, 0xab, 0x6f, 0x46, 0xa3, 0xe1, 0x68, 0x67, 0x34, 0x3b, 0xfb, 0x50, 0xb1, 0xbb, 0x48,
	0x96, 0xd4, 0x5d, 0xd5, 0x93, 0x5d, 0x4d, 0x8a, 0x83, 0xc5, 0xd7, 0x28, 0x55, 0x25, 0xc9, 0xfa,
	0x54, 0x5d, 0xd5, 0x53, 0x55, 0xad, 0x11, 0xf7, 0xf0, 0x7d, 0xc0, 0xb7, 0x80, 0x6d, 0x18, 0x36,
	0xb0, 0x37, 0xbf, 0x4e, 0x06, 0x6c, 0xff, 0x04, 0x5f, 0x0c, 0x1b, 0x30, 0x0c, 0x5f, 0x8c, 0x05,
	0x0c, 0x1f, 0x7d, 0xf1, 0xd1, 0x8f, 0xab, 0x6f, 0xf6, 0xc9, 0xc8, 0xac, 0xac, 0x77, 0x35, 0xd5,
	0xd2, 0xec, 0xc3, 0xf0, 0xa9, 0x3b, 0x23, 0x23, 0x22, 0x33, 0x23, 0x22, 0x23, 0x23, 0x23, 0xa3,
	0x60, 0xd9, 0x24, 0x67, 0x77, 0x47, 0x9e, 0x1b, 0xb8, 0x68, 0x81, 0xfd, 0x34, 0xda, 0x50, 0x3f,
	0xba, 0x34, 0x3d, 0x3d, 0x20, 0xe6, 0x17, 0x63, 0xcb, 0x78, 0x86, 0xc9, 0xc8, 0xbe, 0xdc, 0x1f,
	0x07, 0x81, 0xeb, 0xa0, 0x1d, 0xa8, 0x99, 0x96, 0x3f, 0xb2, 0xf5, 0x4b, 0x8d, 0xbc, 0x08, 0xea,
	0x95, 0x9d, 0xca, 0xee, 0x32, 0x4e, 0x83, 0xd0, 0x1a, 0xcc, 0x5a, 0x66, 0x7d, 0x96, 0x75, 0xcc,
	0x5a, 0x66, 0xe3, 0x10, 0x36, 0x22, 0x6e, 0x7d, 0xdc, 0x9e, 0x9a, 0x8d, 0x00, 0x73, 0x63, 0xcf,
	0xe6, 0x7c, 0xe8, 0xdf, 0xc6, 0x13, 0x40, 0x11, 0xa3, 0xa6, 0x6e, 0xdb, 0x53, 0x73, 0xda, 0x81,
	0xda, 0xe8, 0xc2, 0x75, 0x88, 0x32, 0x1e, 0x3e, 0x25, 0x1e, 0xe7, 0x98, 0x06, 0x35, 0x7e, 0x63,
	0x16, 0xae, 0x47, 0xac, 0x35, 0x32, 0x1c, 0xd9, 0x7a, 0x40, 0x38, 0xfb, 0x6b, 0xb0, 0x60, 0x39,
	0x26, 0x79, 0x51, 0x9f, 0xdf, 0xa9, 0xec, 0xae, 0xe2, 0xb0, 0x81, 0x3a, 0x20, 0x7c, 0x95, 0x93,
	0x0c, 0x1b, 0xb9, 0xb6, 0xf7, 0x56, 0x28, 0xca, 0xbb, 0x93, 0x04, 0x78, 0x34, 0x83, 0x0b, 0xa4,
	0xe8, 0x01, 0x2c, 0x8f, 0x3d, 0xbe, 0x20, 0x36, 0xbf, 0xda, 0x5e, 0x3d, 0xc7, 0x27, 0x16, 0xdd,
	0xd1, 0x0c, 0x4e, 0x90, 0xd1, 0xe7, 0x00, 0x46, 0x2c, 0x8b, 0xfa, 0x1c, 0x23, 0x7d, 0x23, 0x47,
	0x9a, 0x08, 0xeb, 0x68, 0x06, 0xa7, 0xd0, 0xf7, 0x05, 0x58, 0xbb, 0xe0, 0x38, 0x21, 0xa4, 0x61,
	0x82, 0x50, 0xd0, 0xf8, 0xc3, 0xa2, 0x80, 0x6b, 0x7b, 0xb7, 0xa3, 0x31, 0xac, 0xf3, 0x0b, 0xfb,
	0xb2, 0x17, 0x78, 0x63, 0x23, 0x18, 0x7b, 0xc4, 0xec, 0x10, 0xdf, 0xd7, 0xcf, 0xc9, 0xd5, 0x16,
	0xf1, 0xff, 0x60, 0x39, 0xb1, 0x84, 0x6f, 0xce, 0xfe, 0x5e, 0x62, 0x29, 0x2f, 0xa7, 0x64, 0x96,
	0xf4, 0xb3, 0x0a, 0x40, 0xca, 0x84, 0xbe, 0xf9, 0x14, 0x1e, 0x16, 0x4d, 0x6c, 0x0a, 0x0e, 0x69,
	0x13, 0xfc, 0xa7, 0x0a, 0xac, 0x4d, 0x65, 0x7a, 0xd2, 0x44, 0xd3, 0xdb, 0xe6, 0xe3, 0x4d, 0x65,
	0x72, 0xf7, 0x8a, 0x26, 0x27, 0x70, 0xfa, 0x09, 0xa6, 0xf6, 0x71, 0x89, 0xa9, 0x6d, 0x70, 0x92,
	0x89, 0x26, 0x56, 0x85, 0xc5, 0xa7, 0xa1, 0x69, 0x05, 0x50, 0x6d, 0xbb, 0x86, 0x1e, 0x58, 0xae,
	0x83, 0x76, 0x61, 0xdd, 0x24, 0xe7, 0x1e, 0x21, 0x7e, 0x5b, 0x0f, 0xac, 0x60, 0x6c, 0x12, 0xb6,
	0x84, 0x0a, 0xce, 0x83, 0xd1, 0x1d, 0x10, 0x22, 0x90, 0xeb, 0x9c, 0x87, 0xa8, 0xb3, 0x0c, 0xb5,
	0x00, 0x47, 0x08, 0xe6, 0x1d, 0x7d, 0x48, 0xd8, 0xd4, 0x96, 0x31, 0xfb, 0xdf, 0x78, 0x07, 0x16,
	0xba, 0xae, 0xe5, 0x04, 0x68, 0x05, 0x2a, 0x2f, 0x58, 0x4f, 0x05, 0x57, 0x5e, 0xd0, 0xd6, 0x25,
	0x13, 0x6b, 0x05, 0x57, 0x2e, 0x1b, 0xbf, 0x55, 0x81, 0x2d, 0xd9, 0x09, 0x88, 0xa7, 0x1b, 0x81,
	0xf5, 0x9c, 0x88, 0x8e, 0xe3, 0x06, 0xe1, 0x44, 0x3f, 0x81, 0xf5, 0x91, 0x6b, 0x5f, 0x9e, 0xbb,
	0xce, 0x31, 0xf1, 0x02, 0xcb, 0x20, 0x7e, 0xbd, 0xb2, 0x33, 0xb7, 0x5b, 0xdb, 0x5b, 0xe1, 0x0b,
	0x67, 0xcc, 0x71, 0x1e, 0x09, 0x7d, 0x00, 0x55, 0x9b, 0x2f, 0x96, 0x0b, 0x77, 0x9d, 0x13, 0x44,
	0x32, 0x38, 0x9a, 0xc1, 0x31, 0x0a, 0x95, 0x12, 0x1d, 0xda, 0x75, 0x1a, 0xff, 0x59, 0x81, 0x9a,
	0x68, 0x32, 0x45, 0xc9, 0xce, 0x99, 0x8b, 0xde, 0x83, 0x35, 0xdd, 0x7c, 0x4e, 0xd9, 0xfa, 0xc4,
	0x53, 0xe8, 0xea, 0x42, 0x07, 0x97, 0x83, 0xa2, 0x23, 0x58, 0x1e, 0x12, 0xd3, 0xd2, 0xb5, 0xcb,
	0x51, 0x28, 0xa0, 0xb5, 0xbd, 0x3b, 0x7c, 0xc4, 0x14, 0xbb, 0xbb, 0x62, 0x6b, 0x80, 0xa5, 0x6e,
	0xfb, 0x74, 0x20, 0x2b, 0x07, 0xea, 0xa0, 0x23, 0xb5, 0x64, 0x51, 0x3b, 0xed, 0x4a, 0x38, 0x21,
	0x46, 0xef, 0xc2, 0xea, 0xff, 0x19, 0x91, 0x73, 0xed, 0x62, 0x3c, 0x7c, 0xea, 0xe8, 0x96, 0x5d,
	0x17, 0x76, 0x2a, 0xbb, 0x2b, 0x38, 0x0b, 0x44, 0x75, 0x58, 0x32, 0xf4, 0x11, 0x5b, 0xdf, 0x06,
	0x9b, 0x50, 0xd4, 0x6c, 0x7c, 0x06, 0xdb, 0x13, 0x46, 0x41, 0x55, 0x98, 0x57, 0x54, 0x45, 0x12,
	0x66, 0xd0, 0x32, 0x2c, 0xc8, 0x1d, 0xf1, 0x50, 0x12, 0x2a, 0xf4, 0xef, 0xb1, 0xdc, 0x92, 0x54,
	0x61, 0xb6, 0xf1, 0x67, 0xf3, 0x50, 0x6b, 0xba, 0x4e, 0x40, 0x5e, 0x04, 0x6c, 0xf1, 0x37, 0xa0,
	0xea, 0x07, 0xba, 0xf3, 0x13, 0x5d, 0x36, 0xf9, 0xb2, 0xe3, 0x36, 0x73, 0xea, 0x3a, 0x95, 0xb6,
	0x35, 0xd2, 0x9d, 0x20, 0x76, 0xea, 0x09, 0x08, 0xdd, 0x87, 0xd5, 0xaf, 0xc6, 0x6e, 0x10, 0xef,
	0x37, 0x6e, 0xb2, 0x6b, 0x5c, 0x2c, 0xd1, 0x2e, 0xcc, 0x22, 0xa1, 0x5b, 0xb0, 0xec, 0x91, 0xa1,
	0x1b, 0x90, 0x47, 0x96, 0xc9, 0x2c, 0x64, 0x19, 0x27, 0x00, 0xd4, 0x80, 0x95, 0x21, 0x71, 0xe8,
	0x3a, 0x89, 0x49, 0x11, 0xd6, 0x77, 0xe6, 0x76, 0x97, 0x71, 0x06, 0x46, 0x4d, 0xd6, 0x70, 0x9d,
	0xe7, 0xc4, 0xf3, 0x2d, 0xd7, 0xe9, 0xb9, 0x63, 0xcf, 0x20, 0x75, 0xc4, 0x18, 0x15, 0xe0, 0x54,
	0xbd, 0x09, 0xac, 0xa5, 0x07, 0x7a, 0x7d, 0x93, 0x49, 0x3b, 0x07, 0x45, 0x9f, 0xc0, 0xf5, 0x14,
	0x84, 0xd8, 0xfa, 0x65, 0x8f, 0x18, 0xae, 0x63, 0xfa, 0xf5, 0x6b, 0xcc, 0x37, 0x4c, 0xe8, 0xa5,
	0x1b, 0xed, 0xcc, 0xf5, 0xbe, 0xd6, 0x3d, 0xd3, 0x72, 0xce, 0x7b, 0x86, 0xeb, 0x91, 0xfa, 0x16,
	0x23, 0xc8, 0x83, 0xa9, 0x3c, 0x2d, 0xff, 0x20, 0x04, 0x12, 0xb3, 0x7e, 0x7d, 0xa7, 0xb2, 0x5b,
	0xc5, 0x69, 0x10, 0xba, 0x0b, 0xd5, 0x50, 0x54, 0xa2, 0x59, 0xdf, 0x66, 0xa2, 0x44, 0x45, 0x0b,
	0xc3, 0x31, 0x0e, 0xfa, 0x0c, 0xd6, 0x46, 0xb6, 0x6e, 0x90, 0x0b, 0xd7, 0x36, 0x89, 0xf7, 0x98,
	0x5c, 0xd6, 0xeb, 0x19, 0x9f, 0xc1, 0x25, 0xfe, 0x98, 0x5c, 0xe2, 0x1c, 0x22, 0xba, 0x0d, 0x40,
	0x5e, 0x8c, 0x2c, 0x2f, 0xdc, 0x40, 0x6f, 0xb0, 0x19, 0xa7, 0x20, 0x8d, 0xdf, 0xae, 0xc0, 0xad,
	0x1e, 0x71, 0x42, 0xec, 0x96, 0xe5, 0x07, 0x9e, 0xf5, 0x74, 0x4c, 0x7b, 0x22, 0x2d, 0xd6, 0x61,
	0xe9, 0xdc, 0x73, 0xc7, 0xa3, 0xd8, 0x70, 0xa2, 0x26, 0xea, 0xc2, 0x3b, 0xfa, 0x0b, 0xd7, 0x76,
	0x03, 0xfb, 0x2a, 0x06, 0xcc, 0x9e, 0x56, 0xf0, 0x34, 0xa8, 0x8d, 0xbf, 0x5a, 0x84, 0x15, 0x79,
	0xa8, 0x9f, 0x93, 0x68, 0x70, 0x1e, 0xb9, 0x54, 0xe2, 0xc8, 0x85, 0x1a, 0xf2, 0xd0, 0x1a, 0x92,
	0x20, 0xda, 0x9c, 0xcb, 0x38, 0x6e, 0xa7, 0x77, 0xd2, 0x5c, 0x66, 0x27, 0x51, 0x29, 0x9c, 0x59,
	0x36, 0xe9, 0x5d, 0xe8, 0x7b, 0xdf, 0xfd, 0x84, 0xd9, 0xe2, 0x0a, 0x4e, 0x41, 0xa2, 0xfe, 0x36,
	0x71, 0xce, 0x83, 0x8b, 0xfa, 0xc2, 0x4e, 0x65, 0x77, 0x1e, 0xa7, 0x20, 0xe8, 0x3a, 0x2c, 0x5e,
	0x10, 0xeb, 0xfc, 0x22, 0xa8, 0x2f, 0x32, 0x09, 0xf2, 0x16, 0x3d, 0x57, 0xbe, 0xb6, 0xcc, 0xe0,
	0xa2, 0xbe, 0x14, 0x9e, 0x2b, 0xac, 0xc1, 0xe6, 0x48, 0x9d, 0x00, 0x55, 0x54, 0x95, 0x8d, 0x15,
	0xb7, 0xa9, 0x4f, 0xa0, 0x7c, 0x25, 0xc7, 0xe0, 0x93, 0x59, 0x0e, 0x7d, 0x42, 0x06, 0x88, 0x34,
	0xb8, 0x6e, 0x95, 0x79, 0x51, 0xbf, 0x0e, 0xcc, 0x67, 0xde, 0xe2, 0x8a, 0x2f, 0x75, 0xb5, 0x78,
	0x02, 0x2d, 0x5d, 0xa5, 0x69, 0x79, 0xc4, 0x08, 0xba, 0x7a, 0x70, 0x51, 0xaf, 0x31, 0x11, 0xa5,
	0x20, 0xe8, 0x7d, 0xd8, 0x88, 0xe6, 0xa9, 0x59, 0x43, 0xe2, 0x07, 0xfa, 0x70, 0x54, 0x5f, 0xd9,
	0xa9, 0xec, 0xce, 0xe1, 0x62, 0xc7, 0x94, 0xde, 0xed, 0x3e, 0xd4, 0x8c, 0xc4, 0x0f, 0x31, 0x0f,
	0x97, 0x58, 0x7b, 0xca, 0x43, 0xe1, 0x34, 0x1a, 0xdd, 0xf8, 0x67, 0x96, 0xe7, 0x07, 0x3d, 0x43,
	0x77, 0x7a, 0x96, 0x49, 0x0c, 0xdd, 0x63, 0x1b, 0x7f, 0x05, 0x17, 0xe0, 0x6c, 0x63, 0x46, 0x30,
	0xae, 0xc0, 0x4d, 0xbe, 0x31, 0xb3, 0x60, 0xba, 0x3e, 0xf2, 0x62, 0x44, 0x3c, 0x8b, 0x3a, 0x99,
	0x43, 0x6e, 0xd4, 0xe1, 0xae, 0x2f, 0x76, 0x50, 0x07, 0xe5, 0x1b, 0xba, 0xe3, 0x47, 0xe3, 0x6f,
	0xb1, 0xf1, 0x33, 0x30, 0xba, 0xd5, 0xfd, 0x98, 0xbf, 0x5f, 0xbf, 0xbe, 0x33, 0xb7, 0xbb, 0x8a,
	0xd3, 0x20, 0xb4, 0x07, 0xd7, 0x86, 0x96, 0xf9, 0xc5, 0x58, 0xb7, 0xad, 0xe0, 0xf2, 0x20, 0xb1,
	0xc1, 0x6d, 0xc6, 0xad, 0xb4, 0x0f, 0x3d, 0x80, 0xed, 0x2c, 0x3c, 0xb1, 0x96, 0x3a, 0x23, 0x9b,
	0xd4, 0xdd, 0xf8, 0xbf, 0xb0, 0x46, 0x65, 0xaa, 0x1b, 0x41, 0xb4, 0x83, 0x92, 0x98, 0x3e, 0x75,
	0xe4, 0xa5, 0x41, 0xd4, 0x86, 0x9f, 0x1b, 0xba, 0x67, 0x32, 0xfd, 0x2d, 0xe3, 0xb0, 0xf1, 0x7a,
	0x7a, 0x6b, 0xfc, 0x74, 0x16, 0xd6, 0xa3, 0x63, 0x39, 0x9a, 0xc1, 0xaf, 0x2c, 0x42, 0xa1, 0xfb,
	0x5f, 0x37, 0x4d, 0x8f, 0xf8, 0x3e, 0x3f, 0x6e, 0xa2, 0x66, 0xe4, 0x47, 0x16, 0x12, 0x3f, 0xf2,
	0x4b, 0xb4, 0xde, 0xc6, 0xbf, 0x2d, 0xc0, 0xa6, 0xf4, 0x22, 0xa0, 0x9e, 0xce, 0xa4, 0x31, 0x6d,
	0x24, 0x09, 0x04, 0xf3, 0x41, 0x72, 0xb1, 0x62, 0xff, 0xa9, 0x7e, 0x86, 0x7a, 0x60, 0x5c, 0x84,
	0x98, 0xd1, 0xe1, 0x9b, 0x02, 0x51, 0x3b, 0x34, 0x74, 0xc7, 0x75, 0x2c, 0x43, 0xb7, 0xfb, 0x9e,
	0xcd, 0x97, 0x96, 0x81, 0x31, 0x2d, 0x13, 0xdf, 0xf0, 0xac, 0xd0, 0xfb, 0x2d, 0x70, 0x2d, 0x27,
	0x20, 0xaa, 0xe5, 0xc0, 0x0a, 0x6c, 0xc2, 0x1c, 0xd8, 0x32, 0x0e, 0x1b, 0xd4, 0x53, 0xd1, 0x59,
	0x88, 0xde, 0xf9, 0x53, 0xe6, 0xc2, 0x96, 0x70, 0xdc, 0xa6, 0x07, 0xea, 0x53, 0xdd, 0x78, 0x46,
	0xbd, 0xbd, 0x63, 0x32, 0x8c, 0x2a, 0xc3, 0xc8, 0x41, 0x51, 0x07, 0xe6, 0xcf, 0x5c, 0x27, 0x60,
	0x8e, 0x6c, 0x6d, 0xef, 0x33, 0x2e, 0x9c, 0x92, 0xf5, 0xdf, 0x95, 0x9e, 0x68, 0x92, 0xd2, 0x92,
	0x5a, 0x03, 0x4d, 0x7a, 0xa2, 0x0d, 0x3a, 0x52, 0xaf, 0x27, 0x1e, 0x4a, 0x83, 0x03, 0x55, 0xd1,
	0x58, 0xe4, 0xc4, 0xd8, 0xa0, 0xff, 0x0d, 0xb5, 0x91, 0x47, 0x9e, 0x5b, 0xe4, 0x6b, 0x16, 0x80,
	0x01, 0xe3, 0xfa, 0xfd, 0x57, 0xe6, 0xda, 0xc5, 0xd2, 0xb1, 0x2c, 0x9d, 0x30, 0xc6, 0x69, 0x86,
	0xbf, 0x54, 0xb7, 0x45, 0x4d, 0xdd, 0x55, 0xdc, 0xa0, 0x6b, 0xeb, 0x97, 0xb2, 0x63, 0x5b, 0x4e,
	0x18, 0xae, 0x54, 0x71, 0x1e, 0xdc, 0xf8, 0x9d, 0x0a, 0xdc, 0xbe, 0x5a, 0x1c, 0x68, 0x0d, 0xa0,
	0x27, 0x2a, 0xbd, 0x41, 0x4f, 0xc2, 0xf2, 0x41, 0x18, 0xe8, 0x85, 0x7f, 0x2b, 0x68, 0x13, 0xd6,
	0x15, 0x15, 0xcb, 0x4d, 0x51, 0x19, 0x60, 0xe9, 0xb0, 0xdf, 0x16, 0xb1, 0x30, 0x8b, 0x36, 0x60,
	0x75, 0x1f, 0x9f, 0x2a, 0x2d, 0x51, 0x19, 0x9c, 0x60, 0x59, 0x93, 0x84, 0x39, 0xb4, 0x05, 0x1b,
	0xfb, 0xd2, 0xbe, 0xd8, 0x53, 0xa4, 0xbe, 0x14, 0x63, 0xce, 0x23, 0x01, 0x56, 0xd4, 0xde, 0x89,
	0xd8, 0x6e, 0x0d, 0x8e, 0x24, 0xf1, 0xf8, 0x54, 0x58, 0x68, 0x3c, 0x80, 0xb7, 0x5f, 0x2a, 0xc6,
	0x6c, 0xcc, 0x19, 0x06, 0x9a, 0x95, 0xc6, 0x5f, 0xcc, 0xc1, 0x7a, 0xcb, 0x35, 0xc6, 0xd4, 0x73,
	0xbe, 0xde, 0xa9, 0x1d, 0x5b, 0xe6, 0x5c, 0xda, 0x32, 0xbf, 0xe9, 0x89, 0x7d, 0x0b, 0x96, 0x47,
	0xfa, 0x39, 0x69, 0xba, 0x63, 0x27, 0x3a, 0xb4, 0x13, 0x40, 0xe6, 0x84, 0x5e, 0xca, 0x9d, 0xd0,
	0x37, 0xa0, 0x4a, 0xf9, 0x30, 0x77, 0x59, 0x0d, 0xe7, 0x1a, 0xb5, 0xa7, 0x3c, 0xbd, 0xb3, 0xe7,
	0x2c, 0x4c, 0x77, 0xce, 0xd6, 0x7e, 0x0d, 0xe7, 0x6c, 0xe3, 0x0f, 0xe7, 0x60, 0x45, 0x1c, 0x9b,
	0x96, 0xfb, 0x7a, 0xaa, 0xcb, 0x2a, 0x69, 0xee, 0x25, 0x4a, 0x9a, 0x2f, 0x28, 0xa9, 0x0e, 0x4b,
	0x3e, 0x0f, 0xbe, 0x17, 0x98, 0x8a, 0xa2, 0x26, 0x9d, 0xc7, 0x28, 0x08, 0x15, 0x57, 0xc5, 0xf4,
	0xef, 0x95, 0x2a, 0x2b, 0xa8, 0xa5, 0xfa, 0x72, 0xb5, 0x2c, 0x4f, 0xa7, 0x16, 0x98, 0xa4, 0x96,
	0xd7, 0x0e, 0x6c, 0xfc, 0xc0, 0x23, 0xfa, 0x90, 0xde, 0x16, 0xb2, 0x81, 0x4d, 0x1e, 0xde, 0xf8,
	0xff, 0x8b, 0xb0, 0x72, 0x6c, 0x99, 0xe4, 0xbf, 0x9d, 0x72, 0xd2, 0xaa, 0x58, 0xcc, 0xa9, 0x22,
	0x15, 0x83, 0x2f, 0x65, 0x63, 0xf0, 0x1d, 0xa8, 0x9d, 0x5b, 0x67, 0xd4, 0x07, 0xd2, 0x03, 0x84,
	0xa9, 0xa8, 0x8a, 0xd3, 0xa0, 0x54, 0x94, 0xbd, 0x5c, 0x1e, 0x65, 0x43, 0x3a, 0xca, 0x2e, 0x28,
	0xbd, 0xf6, 0x6a, 0x91, 0xf4, 0xca, 0x2f, 0x2c, 0x92, 0x5e, 0x9d, 0xce, 0x94, 0xd6, 0x7e, 0x4d,
	0x91, 0xf4, 0xb4, 0x06, 0x87, 0xfa, 0xb0, 0x76, 0x6e, 0x9d, 0x89, 0x41, 0x7c, 0x2f, 0x63, 0x81,
	0xf4, 0xda, 0xde, 0x07, 0x7c, 0x90, 0xb4, 0x31, 0xde, 0x65, 0x07, 0x40, 0x7c, 0x4e, 0x88, 0x9a,
	0x86, 0xe5, 0xfd, 0xbe, 0x26, 0xab, 0x0a, 0xce, 0x31, 0x69, 0x7c, 0x0e, 0x6f, 0x4c, 0x44, 0xce,
	0x1e, 0x2a, 0x87, 0x72, 0xf7, 0xe8, 0x34, 0x4c, 0x64, 0x68, 0x92, 0xa2, 0x62, 0x61, 0xb6, 0xb1,
	0x03, 0xf3, 0x4d, 0xdd, 0xe6, 0x59, 0x12, 0xdb, 0xa6, 0x26, 0x57, 0x61, 0xd3, 0x8f, 0x9a, 0x8d,
	0x07, 0x30, 0xdf, 0xbc, 0xd0, 0x83, 0x29, 0x22, 0xdd, 0x7c, 0xf2, 0xf4, 0x9f, 0x2b, 0xb0, 0xde,
	0xa5, 0x2b, 0x33, 0x5c, 0x3b, 0xda, 0x63, 0xef, 0xc0, 0xdc, 0x33, 0x3e, 0x46, 0xe9, 0xfd, 0x9a,
	0xf6, 0xa2, 0x87, 0x30, 0x1f, 0x24, 0xd9, 0xa1, 0xf7, 0xa3, 0x04, 0x56, 0x96, 0xd5, 0xdd, 0x2e,
	0x56, 0x35, 0xb5, 0xa9, 0xb6, 0xe3, 0x75, 0x87, 0x51, 0x0e, 0xdb, 0x9c, 0xf7, 0x60, 0x93, 0x8c,
	0x2e, 0xc8, 0x90, 0x78, 0xba, 0x2d, 0x25, 0xf7, 0xf3, 0x30, 0x3d, 0x59, 0xd6, 0xd5, 0xf8, 0x1e,
	0x6c, 0x95, 0x32, 0x44, 0x00, 0x8b, 0x58, 0x3a, 0x56, 0x1f, 0x53, 0x19, 0x6e, 0xc1, 0x86, 0xd4,
	0x3d, 0x92, 0x3a, 0x12, 0x16, 0xdb, 0x83, 0x9e, 0xa4, 0x69, 0xb2, 0x72, 0x28, 0xcc, 0x35, 0xfe,
	0xb8, 0x02, 0xd7, 0xf8, 0xbd, 0xc0, 0x17, 0x3d, 0x4f, 0xbf, 0x9c, 0xfe, 0x76, 0xf0, 0x11, 0x54,
	0x0d, 0x4e, 0x59, 0x9f, 0x65, 0x3b, 0x66, 0x2b, 0x65, 0x72, 0xc9, 0x45, 0x03, 0xc7, 0x68, 0xaf,
	0x79, 0x14, 0x7d, 0x01, 0xb5, 0xa3, 0x5e, 0xa7, 0x39, 0xf6, 0x3c, 0xe2, 0x18, 0x97, 0x2c, 0xea,
	0xe5, 0xff, 0x9b, 0xae, 0x19, 0x4d, 0x2d, 0x03, 0xa3, 0xbb, 0x50, 0x1f, 0xd2, 0xf3, 0xfc, 0xa3,
	0x7b, 0xf7, 0xee, 0x31, 0x65, 0xcc, 0xe1, 0x14, 0xa4, 0xf1, 0x07, 0xf3, 0x70, 0xed, 0xa8, 0xd7,
	0x69, 0xe9, 0x01, 0xa1, 0x9b, 0xad, 0xe9, 0x0e, 0x47, 0xae, 0x43, 0x9c, 0x00, 0x0d, 0x60, 0xd9,
	0xd4, 0x2f, 0xd5, 0xb3, 0x13, 0x42, 0x9e, 0x31, 0xce, 0x6b, 0x7b, 0x62, 0x94, 0x61, 0x2e, 0xc1,
	0xa7, 0xc0, 0x41, 0x4b, 0xd4, 0xa4, 0x81, 0x26, 0x77, 0xa4, 0x41, 0x53, 0xed, 0x74, 0x55, 0x45,
	0x52, 0xb4, 0x41, 0x4b, 0x3c, 0x55, 0x0f, 0x4e, 0x24, 0xe9, 0x71, 0x98, 0xf9, 0x8b, 0x79, 0xd2,
	0x48, 0xff, 0x92, 0xe8, 0x61, 0xf6, 0x7a, 0x15, 0xb3, 0xff, 0xd4, 0x8b, 0x0d, 0x5d, 0x27, 0xb8,
	0x60, 0xae, 0x78, 0x15, 0x87, 0x0d, 0xe6, 0x49, 0x28, 0x59, 0x87, 0x75, 0x85, 0xfa, 0x4f, 0x41,
	0x28, 0xa7, 0x0b, 0x77, 0xec, 0x71, 0x17, 0xcc, 0xfe, 0x53, 0x3f, 0x39, 0xb4, 0x9c, 0x71, 0x40,
	0xa2, 0x6c, 0x44, 0xd8, 0x42, 0x3f, 0x86, 0xaa, 0xa1, 0xdb, 0xc4, 0x31, 0x75, 0x8f, 0x39, 0xdf,
	0xb5, 0xbd, 0x87, 0xaf, 0xb3, 0xaa, 0xa6, 0xd8, 0x96, 0x94, 0x96, 0x88, 0xd9, 0xa2, 0x62, 0x8e,
	0x8d, 0x9f, 0x56, 0xe0, 0x5b, 0x53, 0x09, 0x82, 0x5a, 0x64, 0x47, 0x55, 0x5a, 0x22, 0xdd, 0xca,
	0x35, 0x58, 0xd2, 0xfa, 0x52, 0x8f, 0x36, 0x66, 0xd1, 0x2a, 0x2c, 0x9f, 0x48, 0x2d, 0x25, 0x6c,
	0xce, 0xa1, 0x15, 0xa8, 0x6a, 0x47, 0x7d, 0xcc, 0x5a, 0xf3, 0x94, 0xea, 0x00, 0xcb, 0xf4, 0xff,
	0x02, 0xed, 0xe9, 0x89, 0x5a, 0x1f, 0xd3, 0xd6, 0x22, 0xed, 0xe9, 0xf5, 0x19, 0xbf, 0xa5, 0xc6,
	0x01, 0xbc, 0x3b, 0xcd, 0xbc, 0xe9, 0x50, 0x87, 0x58, 0x3a, 0x54, 0xb1, 0x2c, 0x2a, 0x42, 0x05,
	0xad, 0x43, 0xad, 0xa7, 0xb6, 0x45, 0x3c, 0x38, 0x92, 0x1f, 0x61, 0x59, 0x98, 0x6d, 0xdc, 0xcf,
	0x98, 0x46, 0xdf, 0xb1, 0x5e, 0x48, 0x23, 0xd7, 0x60, 0x71, 0x63, 0x10, 0x7b, 0xec, 0x0a, 0x33,
	0xa9, 0x04, 0xd0, 0xf8, 0xfd, 0x0a, 0xb3, 0xd2, 0x88, 0x0c, 0x7d, 0x0e, 0xcb, 0x46, 0x24, 0x4f,
	0xee, 0x33, 0x6e, 0x5e, 0x21, 0xf2, 0xa3, 0x19, 0x9c, 0xe0, 0x53, 0xe2, 0x71, 0x34, 0x2e, 0x4f,
	0x6d, 0x97, 0x10, 0xc7, 0x53, 0x63, 0x4f, 0x08, 0x51, 0x63, 0x7f, 0x1d, 0x56, 0x4d, 0x3d, 0x20,
	0x74, 0x6a, 0xaa, 0x43, 0xdc, 0xb3, 0xc6, 0x9f, 0x56, 0x60, 0xfb, 0xa8, 0xd7, 0xa1, 0xb7, 0x6f,
	0xdb, 0xfa, 0x89, 0xfe, 0xd4, 0x26, 0x5d, 0xdd, 0xd3, 0x87, 0x24, 0x20, 0x1e, 0x75, 0x9e, 0x26,
	0x39, 0xd3, 0xc7, 0x76, 0x74, 0xf7, 0x8c, 0x9a, 0xe8, 0x1e, 0x54, 0xa3, 0x2d, 0xc5, 0xa7, 0x80,
	0x92, 0x29, 0x44, 0x9b, 0xf1, 0x68, 0x06, 0xc7, 0x58, 0x94, 0xc2, 0xe4, 0x53, 0xe3, 0x69, 0x60,
	0x54, 0x9c, 0x34, 0xa5, 0x88, 0xb0, 0xf6, 0x57, 0x00, 0x46, 0x74, 0x2a, 0xe1, 0x3c, 0x7f, 0x77,
	0x0e, 0xb6, 0x27, 0x3c, 0xe3, 0x50, 0xe1, 0xd3, 0x8b, 0xbc, 0x3f, 0xd2, 0x8d, 0x68, 0xc7, 0x27,
	0x00, 0xea, 0xac, 0x88, 0x4d, 0xe8, 0x45, 0x83, 0x39, 0x2b, 0x7e, 0x55, 0x4e, 0x81, 0xe8, 0xc6,
	0x60, 0x23, 0xf9, 0xf5, 0x39, 0x96, 0x4d, 0xe6, 0x2d, 0x16, 0xea, 0xe8, 0xb6, 0x4d, 0x83, 0x8c,
	0xf6, 0x39, 0xbf, 0x40, 0xa7, 0x20, 0x99, 0x7e, 0x83, 0xdf, 0x9e, 0x53, 0x10, 0xd4, 0x86, 0x0d,
	0x3b, 0x27, 0x57, 0xbf, 0xbe, 0xc8, 0xbc, 0xe1, 0xed, 0x64, 0xf1, 0x65, 0xa2, 0xc7, 0x45, 0xc2,
	0x30, 0x21, 0x12, 0x10, 0x6f, 0x68, 0x39, 0x96, 0x1f, 0x58, 0x46, 0xfb, 0x9c, 0x87, 0x4a, 0x79,
	0x70, 0x11, 0xd3, 0xe0, 0x37, 0x92, 0x3c, 0x18, 0x3d, 0x80, 0x5a, 0xf4, 0xfe, 0x78, 0xe4, 0x0f,
	0x59, 0xfc, 0x54, 0xdb, 0xbb, 0xce, 0xe7, 0x16, 0x3d, 0x86, 0xc5, 0xaf, 0x65, 0x29, 0xd4, 0xc6,
	0x6f, 0x56, 0x00, 0xf5, 0x88, 0x63, 0x76, 0xf5, 0xcb, 0xf4, 0x1d, 0xee, 0x1e, 0xd4, 0x1c, 0x37,
	0x26, 0xe1, 0xb6, 0x91, 0x4f, 0xf8, 0xa7, 0x51, 0xd0, 0x8f, 0x60, 0xc3, 0x23, 0x5f, 0x8d, 0x89,
	0x1f, 0x24, 0xc7, 0x65, 0xee, 0x6d, 0x2b, 0x75, 0x8e, 0x16, 0x71, 0x1b, 0xff, 0x52, 0x81, 0x2d,
	0x1c, 0x42, 0xaf, 0x9e, 0xcc, 0xfc, 0xcb, 0x27, 0x73, 0x0f, 0x36, 0xd3, 0x47, 0x85, 0xec, 0xbb,
	0xf7, 0xf7, 0x3e, 0xfa, 0x94, 0xdb, 0x54, 0x59, 0x57, 0xc9, 0x61, 0x32, 0x9f, 0x3e, 0x4c, 0xa8,
	0xf5, 0xf1, 0x29, 0x1f, 0x78, 0xee, 0x90, 0x5f, 0x56, 0xd3, 0x20, 0xaa, 0x2d, 0x96, 0x58, 0x4f,
	0x85, 0x7c, 0x0b, 0xcc, 0x81, 0xe4, 0xc1, 0x8d, 0x26, 0xdc, 0x6a, 0x11, 0xc3, 0xb6, 0x1c, 0xc2,
	0x17, 0x8a, 0x33, 0xc2, 0x98, 0x2a, 0x08, 0x69, 0xec, 0xc3, 0xcd, 0xa6, 0xee, 0x18, 0xc4, 0xfe,
	0x06, 0x3c, 0xfe, 0x66, 0x0e, 0x36, 0xdb, 0xd6, 0x73, 0xf2, 0xab, 0xc9, 0xd9, 0xdd, 0x01, 0x41,
	0x37, 0x8c, 0xb1, 0xa7, 0x1b, 0x97, 0xb2, 0xd3, 0xa1, 0x16, 0xec, 0xf3, 0xc3, 0xb0, 0x00, 0xa7,
	0xea, 0xf0, 0x47, 0x84, 0x98, 0xb2, 0xd3, 0x19, 0x85, 0xe9, 0xbc, 0x59, 0x9c, 0x82, 0xa0, 0x36,
	0xbc, 0xcd, 0xf9, 0x37, 0x6d, 0xd7, 0x78, 0xf6, 0xb5, 0xe5, 0x13, 0xaa, 0x84, 0x8e, 0x7e, 0xee,
	0x90, 0xc0, 0x32, 0x14, 0xd7, 0xe3, 0x69, 0x81, 0x55, 0xfc, 0x72, 0xc4, 0xf4, 0xad, 0x65, 0x31,
	0x7b, 0x6b, 0x79, 0x0f, 0xd6, 0x7c, 0x2a, 0x58, 0xc7, 0x88, 0x5e, 0xa4, 0x97, 0x98, 0x4e, 0x73,
	0x50, 0x3a, 0x5f, 0xe6, 0x8b, 0xcf, 0xce, 0x7c, 0x12, 0xb0, 0x5d, 0xba, 0x8a, 0x53, 0x90, 0x5f,
	0xea, 0x2d, 0xfe, 0xe7, 0x73, 0xb0, 0xd6, 0x0b, 0x2c, 0xe3, 0x19, 0xf1, 0x26, 0x5f, 0x15, 0xb3,
	0xd7, 0xc1, 0xd9, 0xc2, 0x75, 0xb0, 0x70, 0x9d, 0x9a, 0x2b, 0xbb, 0x4e, 0xa5, 0xaf, 0x7e, 0xf3,
	0xc5, 0xc4, 0x49, 0x7c, 0x19, 0x5d, 0xc8, 0x5d, 0x46, 0x5f, 0xed, 0x01, 0x25, 0x7b, 0xbd, 0xaa,
	0x16, 0xae, 0x57, 0xd9, 0xab, 0xeb, 0x72, 0xe1, 0xea, 0xfa, 0x6a, 0x37, 0xf9, 0xe8, 0xb1, 0xe1,
	0x80, 0xfa, 0x6c, 0xce, 0xb3, 0x16, 0x9a, 0x65, 0x1e, 0x4e, 0x39, 0x27, 0xb0, 0xe8, 0x3e, 0xb5,
	0xc2, 0x04, 0x51, 0xec, 0x78, 0x4d, 0x75, 0xfe, 0xde, 0x3c, 0xac, 0x1f, 0xb8, 0x63, 0x0f, 0xbb,
	0x5f, 0x47, 0x9e, 0x1b, 0x3d, 0x80, 0x25, 0x86, 0xc2, 0x93, 0x59, 0x2f, 0xaf, 0x88, 0x88, 0xd0,
	0xd1, 0x27, 0xb0, 0x78, 0xe6, 0xba, 0x01, 0x37, 0xdc, 0x97, 0x13, 0x72, 0x6c, 0xf4, 0x21, 0x2c,
	0x85, 0xe5, 0x06, 0x7e, 0xbd, 0x9a, 0x89, 0xfb, 0xb3, 0xa5, 0x15, 0x38, 0xc2, 0x42, 0xfb, 0xb0,
	0x6e, 0x66, 0x13, 0x81, 0xdc, 0xf9, 0x44, 0xc7, 0x50, 0x2e, 0x4d, 0x78, 0x34, 0x83, 0xf3, 0x04,
	0xe8, 0x4b, 0xd8, 0xbe, 0x28, 0x9f, 0xd7, 0x74, 0x85, 0x20, 0x47, 0x33, 0x78, 0x12, 0x03, 0xf4,
	0x19, 0xac, 0x58, 0xa9, 0xb7, 0x45, 0x7e, 0x34, 0x6d, 0x46, 0xf7, 0xff, 0x54, 0xd7, 0xd1, 0x0c,
	0xce, 0xa0, 0x52, 0xd2, 0xe7, 0xa9, 0xbb, 0x2f, 0x3f, 0x80, 0x36, 0x4b, 0xae, 0xc5, 0x94, 0x34,
	0x8d, 0x4a, 0xa5, 0x62, 0x67, 0x9d, 0x2b, 0xdb, 0x1b, 0x89, 0x54, 0x72, 0xae, 0x97, 0x4a, 0x25,
	0x47, 0xb0, 0xbf, 0xc4, 0x33, 0xa4, 0x8d, 0x3f, 0x9a, 0x87, 0xed, 0xa8, 0x14, 0x29, 0x6f, 0x21,
	0xf7, 0x60, 0x33, 0x3a, 0xd6, 0x9b, 0xa1, 0xea, 0xd9, 0x83, 0x42, 0xe8, 0xce, 0xca, 0xba, 0xd0,
	0x5d, 0x40, 0x17, 0x31, 0x33, 0xaa, 0x73, 0x46, 0x10, 0x86, 0x22, 0x25, 0x3d, 0xe8, 0x10, 0xd6,
	0xb3, 0x35, 0x4e, 0x91, 0x65, 0xbc, 0x99, 0xab, 0x92, 0xca, 0x59, 0x48, 0x9e, 0x8a, 0xf9, 0x4a,
	0x8e, 0x22, 0x9b, 0x51, 0x22, 0x2e, 0x81, 0xfc, 0x42, 0x2c, 0xe9, 0x2e, 0x6c, 0x44, 0xc3, 0x6a,
	0x54, 0x76, 0xc9, 0xeb, 0xca, 0xd1, 0x0c, 0x2e, 0x76, 0xfd, 0x4f, 0xb0, 0x8e, 0xbf, 0x9c, 0x85,
	0xf5, 0x5c, 0xa8, 0x97, 0xf7, 0x40, 0x73, 0xd3, 0x25, 0x8d, 0x1e, 0x81, 0x70, 0x91, 0xd3, 0x25,
	0x5f, 0xd5, 0xed, 0x9c, 0xaa, 0x73, 0x56, 0x88, 0x0b, 0x74, 0x74, 0x89, 0x67, 0x59, 0xa4, 0x9c,
	0x32, 0x73, 0x2c, 0xe8, 0x12, 0x73, 0x04, 0xcc, 0x2d, 0x94, 0x0f, 0x98, 0x77, 0x0b, 0xe5, 0x58,
	0xcc, 0x2d, 0x94, 0x77, 0xed, 0x57, 0xa9, 0x7f, 0xf4, 0x86, 0x7a, 0xd0, 0xf8, 0xbb, 0x0a, 0xdc,
	0xc8, 0x99, 0x2e, 0x19, 0xd9, 0x71, 0xae, 0x84, 0x46, 0x24, 0xc4, 0x26, 0x46, 0x40, 0xcc, 0xb8,
	0x16, 0x22, 0x05, 0xa1, 0x1b, 0x30, 0x6a, 0xb5, 0x52, 0x25, 0x70, 0xe1, 0x35, 0xa5, 0xac, 0xeb,
	0x35, 0x95, 0xf3, 0x2e, 0xac, 0xc6, 0xa3, 0xa6, 0x6a, 0xda, 0xb2, 0xc0, 0xc6, 0xbf, 0xcf, 0xb2,
	0xdc, 0x96, 0x39, 0x36, 0x82, 0x9e, 0xa3, 0x8f, 0xfc, 0x0b, 0x37, 0x40, 0x9f, 0xc2, 0xca, 0x28,
	0x04, 0x31, 0x7b, 0xe6, 0x7a, 0x28, 0xb3, 0x71, 0x9c, 0x41, 0x64, 0x8f, 0x29, 0xbc, 0x1d, 0xe5,
	0xcf, 0x12, 0xc0, 0x84, 0x07, 0x9c, 0xdc, 0x93, 0xe4, 0x7c, 0xf1, 0x49, 0x32, 0x9f, 0xe2, 0x59,
	0x28, 0x49, 0xf1, 0xec, 0xc2, 0xfa, 0xc8, 0xb3, 0x0c, 0x22, 0x26, 0xa1, 0xf9, 0x62, 0x18, 0x53,
	0xe7, 0xc0, 0x54, 0x3d, 0x1e, 0x09, 0x74, 0xcb, 0x26, 0x9e, 0x6c, 0x72, 0x2f, 0x96, 0x82, 0x44,
	0x11, 0x51, 0x35, 0x89, 0x88, 0xde, 0x87, 0x8d, 0xf4, 0x2a, 0xc3, 0xa7, 0xa2, 0x30, 0xf3, 0x5c,
	0xec, 0xa0, 0xb3, 0x65, 0x07, 0x3c, 0x03, 0xc9, 0x26, 0x2f, 0x9f, 0xc8, 0xc0, 0x1a, 0x7f, 0x52,
	0x81, 0x35, 0x2e, 0xf4, 0xe4, 0x22, 0xb2, 0xc4, 0x79, 0xe5, 0xcc, 0x3e, 0xa7, 0x1c, 0x1c, 0xa1,
	0xd1, 0x70, 0xe4, 0xe9, 0xd8, 0xb7, 0x1c, 0xe2, 0xfb, 0xea, 0xd7, 0x0e, 0xf1, 0x1e, 0xc5, 0x39,
	0xcb, 0x02, 0xfc, 0x35, 0x03, 0x8c, 0x9f, 0xcd, 0x02, 0x0a, 0xab, 0x1c, 0x9c, 0xe7, 0x56, 0xe2,
	0x2b, 0x6e, 0x40, 0x95, 0x95, 0xf6, 0xd0, 0x01, 0x79, 0x8d, 0x58, 0xd4, 0xa6, 0xd2, 0xb5, 0x18,
	0x32, 0xd3, 0x54, 0x38, 0x9d, 0x14, 0x84, 0x4e, 0x3a, 0x6c, 0xa5, 0x92, 0x99, 0x73, 0x4c, 0x51,
	0x05, 0x38, 0xb5, 0x26, 0xc6, 0x97, 0xdd, 0xe2, 0x79, 0x5d, 0x58, 0x0c, 0x28, 0x06, 0xca, 0x0b,
	0x2f, 0x29, 0x9a, 0xcb, 0x05, 0xec, 0x39, 0x91, 0x2c, 0x4d, 0x27, 0x12, 0x02, 0x1b, 0x2d, 0xf2,
	0xdc, 0x32, 0x48, 0x2f, 0x75, 0x86, 0xbc, 0x07, 0x6b, 0x26, 0xf1, 0x03, 0xcb, 0x61, 0xf3, 0x4e,
	0xc4, 0x92, 0x83, 0xa2, 0x5d, 0x58, 0x1a, 0x5e, 0x79, 0x4f, 0x8e, 0xba, 0x1b, 0xcd, 0x78, 0x98,
	0x4b, 0xc7, 0x48, 0x8e, 0x2a, 0xe4, 0x13, 0xcf, 0xd2, 0x6d, 0xeb, 0x27, 0xc4, 0x7c, 0x32, 0xb4,
	0xf7, 0x2f, 0x03, 0x56, 0x1c, 0x49, 0x97, 0x5d, 0xd2, 0xd3, 0xf8, 0xeb, 0x75, 0x58, 0x8a, 0x68,
	0xe9, 0x1e, 0x0a, 0xeb, 0xd5, 0x42, 0x99, 0x47, 0x69, 0xd2, 0x14, 0x0c, 0x9d, 0xc3, 0x2d, 0xff,
	0x65, 0x05, 0x5a, 0xb5, 0xbd, 0x77, 0xf8, 0x9c, 0xaf, 0x2a, 0xd0, 0xc2, 0x57, 0x32, 0xa2, 0xfe,
	0x65, 0xca, 0x33, 0x34, 0x77, 0x82, 0xfe, 0x80, 0xd5, 0xee, 0xa5, 0xb2, 0xc9, 0xfc, 0xb4, 0x99,
	0x90, 0x6a, 0xce, 0x21, 0xa3, 0x87, 0xaf, 0x78, 0x8a, 0x16, 0xce, 0x50, 0xd4, 0x86, 0x4d, 0x52,
	0x2c, 0x2d, 0xe0, 0xa1, 0xf6, 0x8d, 0xc9, 0xc5, 0x07, 0xb8, 0x8c, 0x8c, 0xce, 0x27, 0x1f, 0xbf,
	0x2c, 0x5d, 0x15, 0xbf, 0x14, 0xa3, 0x97, 0x4f, 0x61, 0x45, 0x4f, 0x3d, 0xcb, 0x32, 0xaf, 0x95,
	0x48, 0x32, 0xfd, 0x62, 0x8b, 0x33, 0x88, 0x94, 0x30, 0x13, 0x8b, 0x2c, 0x4f, 0x8c, 0x45, 0x72,
	0x91, 0xc8, 0x5b, 0x30, 0x6f, 0xe8, 0xb6, 0xcd, 0x6e, 0x49, 0xb5, 0xbd, 0x5a, 0xaa, 0x18, 0x19,
	0xb3, 0x0e, 0x86, 0x70, 0xa1, 0x07, 0xcc, 0xef, 0xa5, 0x10, 0x2e, 0xf4, 0x00, 0xb3, 0x0e, 0xba,
	0xea, 0x51, 0xf6, 0x05, 0x84, 0x5d, 0x8c, 0x32, 0x1e, 0x2f, 0xdd, 0x8b, 0xf3, 0xe8, 0x48, 0x85,
	0x6b, 0x46, 0xc9, 0x2b, 0x05, 0x7b, 0x5f, 0x4b, 0x72, 0xa3, 0x65, 0x0f, 0x19, 0xb8, 0x94, 0x10,
	0x3d, 0x99, 0x7c, 0x9d, 0x58, 0x9b, 0xea, 0x32, 0x34, 0xf1, 0x32, 0xf1, 0xd3, 0x0a, 0xdc, 0x39,
	0xd3, 0xfd, 0x00, 0xb3, 0x42, 0x9d, 0xe0, 0x31, 0xb9, 0xbc, 0xb2, 0x06, 0x72, 0x7d, 0xfa, 0x2d,
	0xf6, 0x0a, 0x6c, 0x91, 0x4c, 0x3d, 0x47, 0x3e, 0x75, 0xc7, 0x32, 0x0b, 0xc9, 0xa7, 0x0b, 0xc5,
	0xdc, 0x1e, 0x2e, 0x21, 0xa2, 0x3b, 0xc0, 0x2e, 0x26, 0x82, 0xd8, 0x53, 0x61, 0xb2, 0x03, 0x4a,
	0x52, 0x45, 0xb8, 0x8c, 0x0c, 0x61, 0xd8, 0xf2, 0xca, 0x32, 0x79, 0xac, 0x18, 0x36, 0x79, 0x74,
	0x2d, 0xcd, 0xf6, 0xe1, 0x72, 0x52, 0xea, 0xc6, 0xcc, 0x2b, 0x92, 0x66, 0xbc, 0x90, 0x36, 0x92,
	0xf1, 0x55, 0xf9, 0x35, 0x7c, 0x25, 0x23, 0x64, 0xc2, 0x4d, 0x63, 0x72, 0x62, 0x8d, 0x97, 0xde,
	0x36, 0xe2, 0x1d, 0x32, 0x11, 0x13, 0x5f, 0xc5, 0x86, 0x6e, 0x97, 0x20, 0x1b, 0xac, 0xb3, 0xea,
	0xdc, 0xc9, 0x59, 0xdb, 0x3c, 0x3a, 0xf5, 0x9a, 0x7e, 0x26, 0xeb, 0x53, 0xbf, 0x91, 0xf1, 0x9a,
	0xd9, 0x94, 0x10, 0xce, 0x21, 0x53, 0xe3, 0x39, 0x2f, 0x04, 0x01, 0xf5, 0x5b, 0x19, 0xe3, 0x29,
	0x46, 0x09, 0xb8, 0x84, 0x08, 0xe9, 0x70, 0x23, 0x98, 0x18, 0x38, 0xd7, 0xdf, 0x64, 0x2c, 0xdf,
	0x2e, 0x4f, 0x1f, 0xa4, 0x10, 0xf1, 0x15, 0x4c, 0xe8, 0x62, 0x47, 0x99, 0xc8, 0xaa, 0x7e, 0x3b,
	0xb3, 0xd8, 0x6c, 0xd8, 0x85, 0x73, 0xc8, 0xe8, 0x00, 0x36, 0xcc, 0xfc, 0xf9, 0x5e, 0x7f, 0x2b,
	0xf3, 0x79, 0x50, 0xe1, 0xfc, 0xc7, 0x45, 0x92, 0x14, 0x9f, 0xe4, 0x00, 0xaf, 0xef, 0x94, 0xf1,
	0x49, 0xfa, 0x71, 0x91, 0xa4, 0x11, 0x00, 0x24, 0xb9, 0xd8, 0x6c, 0xa5, 0x7c, 0x25, 0x5f, 0x29,
	0x7f, 0x1d, 0x16, 0xcf, 0x3c, 0x77, 0xd8, 0x09, 0x4f, 0xea, 0x2a, 0xe6, 0x2d, 0xfe, 0x9c, 0x3d,
	0x17, 0x3d, 0x67, 0xe7, 0xeb, 0xf8, 0xe7, 0x0b, 0x75, 0xfc, 0x8d, 0xff, 0xd8, 0x84, 0xda, 0x09,
	0x79, 0x7a, 0x40, 0x74, 0xea, 0xcc, 0x7c, 0xf4, 0x08, 0x56, 0x6d, 0xfd, 0x29, 0xb1, 0x7d, 0x7e,
	0x2b, 0xe1, 0x6f, 0xa1, 0xef, 0xf2, 0x95, 0xa4, 0x50, 0xef, 0x9e, 0x48, 0xfb, 0x83, 0x03, 0x49,
	0xd4, 0xfa, 0x58, 0xea, 0x0d, 0x0e, 0xda, 0xe2, 0x21, 0xce, 0x92, 0xa2, 0x1f, 0xc3, 0xf5, 0xe7,
	0xae, 0x35, 0x92, 0x1d, 0xd3, 0x7a, 0x6e, 0x99, 0x63, 0xdd, 0x56, 0xc7, 0xc1, 0xb9, 0x6b, 0x39,
	0xe7, 0xfc, 0x95, 0x7c, 0x3a, 0xa6, 0x13, 0x78, 0xa0, 0x87, 0x3c, 0x36, 0xf5, 0x8f, 0x3f, 0x66,
	0x2b, 0x9e, 0x96, 0x5f, 0x4c, 0x85, 0xda, 0xb0, 0x16, 0xfd, 0x6f, 0x7a, 0x24, 0xba, 0xd1, 0x4e,
	0xcb, 0x27, 0x47, 0x4b, 0xb9, 0x19, 0x17, 0xba, 0x73, 0xce, 0xd3, 0xbf, 0xc7, 0x7b, 0x2c, 0xe2,
	0x98, 0x9a, 0x5b, 0x96, 0x96, 0xca, 0xee, 0xab, 0x31, 0xf1, 0x2e, 0x7b, 0x81, 0x1e, 0x8c, 0xfd,
	0xe3, 0x8f, 0x93, 0xe0, 0x77, 0xf1, 0x55, 0x64, 0x57, 0xce, 0x83, 0x69, 0x39, 0xe5, 0xa3, 0x7d,
	0xfe, 0x36, 0x3c, 0xad, 0x96, 0xd3, 0xa4, 0xa8, 0x05, 0xc0, 0x46, 0x39, 0x76, 0xa2, 0xf2, 0xb8,
	0x69, 0x19, 0xa5, 0xe8, 0x8a, 0xb6, 0x22, 0x3b, 0x86, 0x3b, 0xa4, 0xb6, 0xb2, 0xfc, 0xfa, 0xb6,
	0x12, 0xf1, 0x40, 0x18, 0x36, 0xe2, 0x6f, 0xb4, 0x2c, 0xe2, 0x7f, 0x41, 0xc7, 0xe5, 0x75, 0xa4,
	0xd3, 0x31, 0x2e, 0x92, 0x53, 0xfb, 0x1b, 0x85, 0x6e, 0xdc, 0x67, 0x11, 0xd0, 0xd4, 0xf6, 0x17,
	0x51, 0xa1, 0x2e, 0x08, 0xdc, 0x01, 0x77, 0x75, 0xe3, 0x59, 0x38, 0xa9, 0x95, 0x57, 0xe0, 0x54,
	0xa0, 0x46, 0x1a, 0xa0, 0x8c, 0x72, 0x0e, 0x2c, 0x47, 0xb7, 0x59, 0xb0, 0x34, 0x2d, 0xcf, 0x12,
	0x7a, 0xaa, 0xe1, 0x70, 0x63, 0x4b, 0xa6, 0x15, 0xb0, 0x30, 0x69, 0x6a, 0x0d, 0x27, 0x74, 0xe8,
	0x00, 0x6a, 0x2c, 0xd1, 0xde, 0x1f, 0xd9, 0xae, 0x6e, 0xb2, 0xf8, 0x67, 0x5a, 0x36, 0x69, 0x42,
	0x74, 0x06, 0x37, 0x53, 0x4d, 0x6c, 0x19, 0x17, 0x5f, 0xa4, 0x74, 0xc3, 0xc2, 0x93, 0x69, 0xf9,
	0x5e, 0xc5, 0x08, 0xfd, 0x10, 0x96, 0x9e, 0x53, 0xd3, 0x3c, 0xde, 0xe3, 0x35, 0x4f, 0xd3, 0xf1,
	0x8c, 0x88, 0xa8, 0x76, 0x59, 0x38, 0x1d, 0xd5, 0xb2, 0xf5, 0x3d, 0x9b, 0x7d, 0x59, 0x30, 0xb5,
	0x76, 0xf3, 0xd4, 0x74, 0xd7, 0xfa, 0x6c, 0x2b, 0x63, 0xdd, 0x79, 0x46, 0xb7, 0xc6, 0xd6, 0xab,
	0xec, 0xda, 0x0c, 0x29, 0x3a, 0x86, 0xcd, 0xec, 0x5e, 0x61, 0x17, 0x01, 0x16, 0x8c, 0x4d, 0xcb,
	0xb1, 0x8c, 0x01, 0xb5, 0xc0, 0xe0, 0xc2, 0xf2, 0xcc, 0xae, 0xee, 0x05, 0x97, 0x3c, 0xdc, 0xf0,
	0x59, 0x20, 0x36, 0xb5, 0x05, 0x16, 0xe9, 0x91, 0x09, 0x37, 0xce, 0x58, 0x08, 0xe8, 0x04, 0xf6,
	0x65, 0xfc, 0xd1, 0x54, 0x8f, 0x04, 0x01, 0x15, 0x43, 0xfd, 0x15, 0xb8, 0x5f, 0xc1, 0x87, 0xfa,
	0x20, 0xee, 0xd3, 0xef, 0x3f, 0x72, 0x2d, 0xa7, 0x4b, 0xbc, 0xa1, 0xe5, 0xfb, 0xd1, 0x47, 0x52,
	0x53, 0xfb, 0xa0, 0x72, 0x1e, 0xf4, 0x7c, 0xf0, 0x88, 0x41, 0x9c, 0x20, 0x96, 0xca, 0x8d, 0x57,
	0x39, 0x1f, 0xb2, 0xb4, 0xd4, 0x3a, 0x0d, 0x3d, 0xd0, 0x6d, 0xf7, 0xbc, 0x7e, 0xf3, 0x55, 0xac,
	0x93, 0x13, 0x21, 0x05, 0xd6, 0xfd, 0x40, 0xf7, 0x3c, 0x62, 0xc6, 0xd3, 0xb9, 0xf5, 0x0a, 0x7c,
	0xf2, 0xc4, 0xd4, 0x36, 0xa9, 0x39, 0xb0, 0xe8, 0x90, 0x5e, 0x11, 0x59, 0x88, 0x37, 0xb5, 0x6d,
	0x66, 0x48, 0xe9, 0xdc, 0xf2, 0x71, 0xf0, 0xed, 0x57, 0x99, 0x5b, 0x3e, 0x2a, 0xbe, 0x80, 0x5b,
	0x39, 0x50, 0x52, 0xda, 0x69, 0x05, 0x97, 0x2c, 0xe8, 0x9b, 0x96, 0xf9, 0x95, 0x9c, 0xe8, 0x39,
	0x13, 0x17, 0xea, 0x71, 0x04, 0x9f, 0xc5, 0x82, 0x53, 0x9f, 0x33, 0x05, 0xf2, 0xc6, 0x13, 0xd8,
	0x28, 0xe0, 0xa1, 0x75, 0xa8, 0x29, 0xaa, 0x36, 0xe8, 0x69, 0x22, 0xd6, 0xa4, 0x96, 0x30, 0x83,
	0x36, 0x60, 0xf5, 0x40, 0xc5, 0x4d, 0x69, 0xd0, 0xef, 0x1e, 0x62, 0xb1, 0x25, 0x85, 0x05, 0x4e,
	0x2d, 0xe9, 0x58, 0x6a, 0xab, 0xdd, 0x8e, 0xa4, 0x68, 0xc2, 0x2c, 0x5a, 0x03, 0xe8, 0x62, 0xb5,
	0xd5, 0x6f, 0x6a, 0xb2, 0xaa, 0x08, 0x73, 0x8d, 0xbf, 0xaf, 0xc0, 0xb6, 0xa6, 0x3f, 0xb5, 0x49,
	0xa0, 0xb8, 0x81, 0x75, 0x66, 0x71, 0xa7, 0xcf, 0x52, 0xca, 0x99, 0xa2, 0xa7, 0xb0, 0xf4, 0x21,
	0x01, 0xd0, 0xb8, 0x72, 0xec, 0x78, 0x44, 0x37, 0xe9, 0x65, 0x3f, 0x7a, 0xb1, 0x4f, 0x83, 0xd0,
	0x5d, 0x40, 0x0e, 0x65, 0x1a, 0x45, 0xeb, 0x61, 0x2a, 0x35, 0xcc, 0x4b, 0x97, 0xf4, 0xa0, 0x16,
	0xac, 0x66, 0xa0, 0xf5, 0x85, 0x4c, 0x2d, 0x4d, 0x7a, 0x82, 0xb1, 0xe4, 0xcf, 0x5c, 0x9c, 0x25,
	0x6a, 0xfc, 0x79, 0x05, 0xb6, 0x27, 0xa0, 0x4e, 0x57, 0xc6, 0x39, 0x75, 0xde, 0x0e, 0xdd, 0x01,
	0x81, 0xff, 0x4d, 0xde, 0x93, 0xe7, 0x98, 0x9c, 0x0a, 0xf0, 0x29, 0xc2, 0xf0, 0xbf, 0xad, 0xc0,
	0xb5, 0x13, 0xf2, 0xf4, 0xd7, 0xaf, 0x87, 0x1f, 0xc0, 0x5a, 0x06, 0xea, 0x73, 0x45, 0x6c, 0x25,
	0xe6, 0x9b, 0x96, 0x7f, 0x0e, 0xb9, 0xf1, 0xf3, 0x79, 0xa8, 0xf1, 0xcb, 0x2d, 0x9b, 0xfe, 0x54,
	0x25, 0x34, 0x06, 0xb1, 0x9e, 0x87, 0x49, 0xed, 0xb8, 0x84, 0x26, 0x06, 0xa1, 0x1f, 0xc2, 0x62,
	0x78, 0x72, 0xf1, 0xe0, 0xfc, 0xbd, 0xe8, 0x76, 0x97, 0x8c, 0x72, 0xb7, 0x2b, 0x9e, 0x52, 0x13,
	0x0f, 0xbf, 0x88, 0xee, 0x69, 0xa2, 0xd6, 0xef, 0x61, 0x4e, 0x85, 0xf6, 0xe0, 0x5a, 0xe0, 0xe9,
	0x8e, 0x1f, 0x7e, 0x02, 0x9e, 0xad, 0xc3, 0x99, 0xc7, 0xa5, 0x7d, 0xe5, 0x75, 0x4b, 0x8b, 0xd3,
	0xd7, 0x2d, 0x95, 0xd5, 0xfd, 0x2c, 0xb1, 0xf1, 0xf2, 0x60, 0x56, 0x63, 0x31, 0xa6, 0xde, 0x60,
	0xe4, 0xb9, 0xee, 0x19, 0x31, 0x79, 0x11, 0x7c, 0x16, 0x88, 0x6e, 0xa4, 0x6a, 0xf2, 0xc2, 0xc7,
	0xd1, 0xb8, 0xdd, 0xf8, 0xc7, 0x0a, 0x6c, 0x96, 0x08, 0x00, 0x21, 0x58, 0xeb, 0x2b, 0x8f, 0x15,
	0xf5, 0x44, 0xe1, 0x10, 0x61, 0x86, 0x7b, 0x80, 0xa6, 0xd4, 0xeb, 0xc9, 0xca, 0xa1, 0x50, 0x41,
	0x55, 0x98, 0xef, 0x85, 0xbe, 0x01, 0xc1, 0x9a, 0x22, 0x49, 0xad, 0x81, 0xa6, 0x0e, 0xc4, 0x66,
	0x53, 0xea, 0x6a, 0x61, 0x31, 0x66, 0x53, 0xed, 0x74, 0xdb, 0x92, 0x26, 0x09, 0xf3, 0xe8, 0x3a,
	0xa0, 0xa6, 0xda, 0x6f, 0xb7, 0x06, 0xd4, 0xf1, 0xc4, 0x70, 0x56, 0x98, 0x89, 0xa5, 0x83, 0xbe,
	0xd2, 0x92, 0x5a, 0xc2, 0x22, 0xaa, 0xc1, 0x92, 0xf4, 0xa4, 0x2b, 0x63, 0xa9, 0x25, 0x2c, 0x85,
	0x5d, 0x8f, 0xa4, 0x26, 0x75, 0x51, 0x55, 0xb4, 0x0a, 0xcb, 0x4d, 0x51, 0x69, 0x4a, 0xed, 0xb6,
	0xd4, 0x12, 0x96, 0xd1, 0x16, 0x6c, 0x9c, 0x88, 0xb2, 0x26, 0x2b, 0x87, 0x83, 0x03, 0x15, 0x0f,
	0xba, 0xe2, 0xa9, 0x84, 0x05, 0xa0, 0x0c, 0x38, 0x58, 0xa8, 0x35, 0xfe, 0xe1, 0x06, 0xac, 0x65,
	0x2d, 0x2e, 0xd9, 0xc6, 0xb3, 0xbf, 0xf2, 0x6d, 0x2c, 0xe5, 0x4c, 0xf1, 0x83, 0xd2, 0x3d, 0xc1,
	0xbc, 0x7a, 0x54, 0x8e, 0x5d, 0x66, 0x91, 0x39, 0x6f, 0xb0, 0x50, 0xfc, 0xb8, 0xfe, 0x3a, 0x2c,
	0x5a, 0xe7, 0x8e, 0xeb, 0x85, 0x89, 0xbb, 0x2a, 0xe6, 0x2d, 0xf6, 0xfd, 0x45, 0x78, 0xee, 0xb2,
	0x77, 0x9d, 0x2a, 0x8e, 0x9a, 0xd4, 0x4d, 0x3c, 0xf5, 0x5c, 0xdd, 0x34, 0x74, 0x3f, 0xe0, 0x1f,
	0x98, 0x25, 0x00, 0x6a, 0x3e, 0xa3, 0xb1, 0x7f, 0xc1, 0x5e, 0x57, 0x36, 0x43, 0xf3, 0x89, 0xda,
	0xe8, 0x3e, 0x6c, 0xb1, 0x28, 0xb8, 0x69, 0x8d, 0x2e, 0x88, 0x17, 0x90, 0x17, 0x01, 0x2f, 0xf6,
	0xb9, 0xc6, 0x5e, 0x1b, 0xca, 0x3b, 0xe9, 0x78, 0xc3, 0xb1, 0x1d, 0x58, 0x6c, 0xbc, 0xad, 0x70,
	0xbc, 0x18, 0x40, 0xe7, 0x39, 0xf6, 0x6c, 0xf6, 0xd6, 0x19, 0x7e, 0xea, 0x1e, 0x35, 0x29, 0xdd,
	0xd8, 0xb3, 0x79, 0xd9, 0xd4, 0x76, 0x48, 0x17, 0x03, 0xd0, 0x29, 0xac, 0x73, 0xa1, 0xf7, 0x82,
	0xf1, 0x53, 0xf6, 0xb1, 0x5f, 0x18, 0xdb, 0x7d, 0x38, 0xb5, 0xa4, 0xfb, 0xfb, 0xac, 0x46, 0x39,
	0xcf, 0x87, 0x3a, 0x22, 0xc3, 0x26, 0xba, 0xd7, 0xa1, 0xcb, 0x61, 0xf1, 0x5c, 0x15, 0xa7, 0x20,
	0xa1, 0x18, 0x62, 0x92, 0xb8, 0x58, 0x93, 0x06, 0x69, 0x73, 0xbb, 0xcb, 0xb8, 0xbc, 0x93, 0x0a,
	0xd6, 0x1c, 0xf3, 0xb7, 0xad, 0x9b, 0xcc, 0xa7, 0xc6, 0x6d, 0xaa, 0xc4, 0xf0, 0xf6, 0x53, 0xbf,
	0x15, 0x56, 0x9e, 0x86, 0x2d, 0x74, 0x9f, 0xaa, 0x3f, 0xf6, 0x5d, 0x3c, 0x15, 0x86, 0x8a, 0x5e,
	0x0d, 0xa7, 0xd1, 0xd0, 0x11, 0x6c, 0x9c, 0xd1, 0xcb, 0x58, 0x3a, 0xdf, 0xca, 0xf3, 0x5d, 0x57,
	0xa5, 0x62, 0x8b, 0x44, 0xe8, 0x21, 0xbd, 0x0b, 0xbb, 0x01, 0x31, 0x53, 0x63, 0xf1, 0xbc, 0x57,
	0xd9, 0x2c, 0x8a, 0xc8, 0xe8, 0x01, 0x6c, 0xc7, 0x61, 0x4a, 0x2f, 0xd0, 0xbd, 0x20, 0xd9, 0x3a,
	0x3b, 0x6c, 0xeb, 0x4c, 0xea, 0x66, 0x9f, 0x5b, 0x47, 0x5d, 0xad, 0x48, 0x70, 0x6f, 0xf3, 0xcf,
	0xad, 0xf3, 0x1d, 0x0d, 0x0b, 0xb6, 0x27, 0xec, 0x25, 0xb4, 0x0c, 0x0b, 0x12, 0xc6, 0x2a, 0x16,
	0x66, 0xa8, 0xc3, 0xe8, 0x4a, 0x4a, 0x2b, 0x74, 0x68, 0x6b, 0x00, 0x3d, 0x09, 0x1f, 0x4b, 0x78,
	0x20, 0x36, 0x1f, 0x0b, 0xb3, 0x48, 0x80, 0x95, 0x96, 0xd4, 0x96, 0x8f, 0x25, 0x7c, 0xca, 0x20,
	0x73, 0xd4, 0xe5, 0x61, 0x49, 0x6c, 0x85, 0xd5, 0xe5, 0xdd, 0xb6, 0x78, 0x2a, 0xb5, 0x84, 0x85,
	0xc6, 0xbf, 0x6e, 0xc0, 0x1b, 0x13, 0xad, 0x89, 0x0e, 0xc1, 0x5d, 0xa9, 0x30, 0x93, 0xfa, 0xb8,
	0x82, 0x0d, 0xd7, 0x94, 0xbb, 0x47, 0x12, 0xd6, 0xa4, 0x27, 0xd4, 0x8b, 0xae, 0x43, 0xed, 0xa0,
	0x4f, 0xc3, 0xb4, 0x2e, 0x56, 0xd5, 0x03, 0x61, 0x0e, 0xdd, 0x84, 0x6d, 0x45, 0x55, 0x06, 0xc7,
	0x12, 0x96, 0x0f, 0x64, 0xea, 0x5e, 0xb1, 0xa8, 0xf4, 0x64, 0x16, 0x7f, 0xcd, 0xa3, 0x37, 0x60,
	0xab, 0xaf, 0x94, 0x75, 0x2d, 0xa0, 0x6d, 0xd8, 0x2c, 0xeb, 0x58, 0x44, 0x75, 0xb8, 0x16, 0x77,
	0xb4, 0xd5, 0x93, 0x41, 0x34, 0xaf, 0x25, 0x1a, 0x01, 0xc6, 0x3d, 0x47, 0xf2, 0xe1, 0x91, 0x50,
	0x45, 0xb7, 0xa0, 0x1e, 0x83, 0x64, 0x45, 0xd6, 0x64, 0xb1, 0x1d, 0x13, 0x2c, 0x67, 0x58, 0x45,
	0xbd, 0x6d, 0xf5, 0x44, 0x00, 0x3a, 0xb1, 0x42, 0x0f, 0x63, 0x59, 0x43, 0xef, 0xc0, 0x5b, 0x25,
	0x13, 0x1b, 0x88, 0xca, 0x29, 0x3d, 0x3a, 0xd8, 0x77, 0x3b, 0x2b, 0x2f, 0x41, 0x62, 0x9c, 0x56,
	0x27, 0x21, 0xd1, 0x5e, 0x8a, 0x45, 0x67, 0xb2, 0x86, 0xbe, 0x0d, 0xef, 0x5c, 0x85, 0x14, 0x2d,
	0x66, 0x1d, 0xbd, 0x07, 0x8d, 0x32, 0xc4, 0xe8, 0x04, 0xe4, 0x0c, 0x85, 0x49, 0x78, 0x54, 0x94,
	0x29, 0x7e, 0x1b, 0x93, 0x66, 0x47, 0x17, 0x18, 0x31, 0x43, 0x93, 0x66, 0x17, 0x21, 0x45, 0xdc,
	0x36, 0xa9, 0x19, 0x1e, 0x62, 0xb5, 0xdf, 0x1d, 0x34, 0xb1, 0x24, 0x6a, 0x92, 0x70, 0x8d, 0x0a,
	0x9f, 0x43, 0x8e, 0x44, 0xe5, 0x50, 0x1a, 0xf4, 0xfa, 0xfb, 0xf4, 0xa0, 0x14, 0xb6, 0xe8, 0xb9,
	0x98, 0xe9, 0x91, 0x9b, 0xaa, 0x22, 0x5c, 0xa7, 0xba, 0xcc, 0x82, 0x95, 0x63, 0x59, 0x93, 0x06,
	0x6d, 0x59, 0x79, 0x2c, 0x6c, 0x17, 0x7a, 0x5b, 0x52, 0xaf, 0x89, 0xe5, 0x2e, 0x33, 0x9a, 0x3a,
	0xd5, 0x67, 0xa6, 0x17, 0x4b, 0x3d, 0x0d, 0xcb, 0x4d, 0x4d, 0x78, 0xa3, 0xd0, 0x25, 0x2a, 0x8a,
	0xda, 0x57, 0x9a, 0x92, 0x70, 0x23, 0xe9, 0xea, 0x8a, 0x58, 0x93, 0x9b, 0x72, 0x57, 0x54, 0xb4,
	0x81, 0xd8, 0x6a, 0x09, 0x37, 0x93, 0xe1, 0xd2, 0x5d, 0x58, 0xea, 0xa8, 0xc7, 0x92, 0x70, 0x0b,
	0xbd, 0x09, 0x6f, 0x14, 0x7b, 0xbb, 0x58, 0xed, 0xa8, 0x9a, 0x24, 0xbc, 0x59, 0x4e, 0xdc, 0x92,
	0x58, 0xef, 0xed, 0xf2, 0xde, 0x70, 0xb1, 0xc2, 0x5b, 0x74, 0x3f, 0x15, 0x7b, 0xdb, 0x92, 0x78,
	0x2c, 0x09, 0x3b, 0x54, 0x67, 0xc5, 0x4e, 0xbe, 0x2e, 0xa5, 0xdf, 0xd9, 0x97, 0xb0, 0xf0, 0x36,
	0xba, 0x06, 0xc2, 0x3e, 0x56, 0xc5, 0x56, 0x53, 0xec, 0x69, 0x91, 0x3a, 0x1a, 0xe1, 0x97, 0xd2,
	0x11, 0x94, 0xae, 0xf1, 0x9d, 0x2c, 0x22, 0x5f, 0xdb, 0xbb, 0x4c, 0x6f, 0x92, 0x22, 0x61, 0xb9,
	0x49, 0xe3, 0x20, 0xf9, 0x40, 0x6e, 0x8a, 0x4c, 0xc8, 0xdf, 0xa2, 0x3d, 0xd2, 0x9e, 0x34, 0x90,
	0x5b, 0x92, 0xa2, 0xc9, 0xda, 0x29, 0x1f, 0xb8, 0x25, 0xbc, 0x47, 0x99, 0xd3, 0x1e, 0x49, 0x69,
	0xe2, 0xd3, 0x2e, 0x8d, 0x85, 0xbe, 0x4d, 0x95, 0xdc, 0x14, 0xdb, 0xed, 0x41, 0x47, 0xee, 0xf5,
	0xa4, 0xd6, 0xe0, 0x58, 0x95, 0x9b, 0x92, 0xb0, 0x5b, 0x00, 0xb3, 0x2f, 0xaa, 0xbf, 0x43, 0x65,
	0x22, 0x2b, 0x2d, 0xf9, 0x58, 0x6e, 0xf5, 0xc5, 0x76, 0x6e, 0x45, 0x77, 0x12, 0xe3, 0x6a, 0x49,
	0x2c, 0x24, 0xfb, 0x5f, 0xd4, 0xc8, 0x43, 0x48, 0xa4, 0xcd, 0x41, 0x47, 0x6d, 0x49, 0xb1, 0x73,
	0xdb, 0x0f, 0x35, 0xfc, 0x3e, 0x95, 0x66, 0x7a, 0xb8, 0x90, 0x26, 0x9c, 0xcb, 0x07, 0x13, 0x3a,
	0xd9, 0x8c, 0xee, 0xd2, 0x60, 0x30, 0x8a, 0x39, 0x53, 0x0e, 0xf0, 0x43, 0xea, 0xb7, 0x22, 0x78,
	0xda, 0x11, 0xde, 0x43, 0xef, 0xc3, 0x6e, 0xd4, 0xc1, 0x76, 0x8a, 0xc8, 0x2e, 0xa1, 0xdc, 0x9d,
	0x0f, 0xfa, 0x5d, 0xf6, 0xf5, 0xce, 0x81, 0x28, 0xd3, 0xd8, 0xf0, 0x23, 0x74, 0x17, 0xee, 0xbc,
	0x1c, 0x3b, 0x8e, 0x3a, 0xf7, 0xd0, 0xc7, 0xf0, 0xe1, 0xb4, 0xf8, 0xd1, 0x20, 0x1f, 0xa3, 0xef,
	0xc2, 0x47, 0x57, 0x10, 0x61, 0xa9, 0x29, 0xd1, 0x73, 0x63, 0xc0, 0x0f, 0x97, 0x41, 0x4f, 0xd2,
	0xfa, 0x5d, 0xe1, 0x3e, 0xfa, 0x3e, 0x3c, 0x98, 0x86, 0xac, 0xd7, 0x6f, 0xd2, 0x38, 0x7b, 0x20,
	0x1e, 0x68, 0x12, 0x1e, 0x1c, 0xc9, 0xcd, 0x66, 0xbf, 0x2b, 0x7c, 0x17, 0x7d, 0x07, 0xbe, 0x15,
	0x51, 0x73, 0x42, 0xb1, 0xd9, 0x54, 0xfb, 0x8a, 0x16, 0xf2, 0xa7, 0x86, 0x26, 0x2b, 0x2d, 0x09,
	0x0b, 0x9f, 0xa0, 0x5d, 0x78, 0x37, 0x87, 0xda, 0x93, 0x94, 0xd6, 0x20, 0x82, 0xc5, 0x98, 0x9f,
	0xa2, 0x3b, 0xf0, 0xde, 0x55, 0x98, 0x6c, 0xf7, 0x84, 0x66, 0xfa, 0x80, 0x6e, 0x92, 0x1c, 0x2e,
	0x96, 0xbe, 0xe8, 0x4b, 0x3d, 0xba, 0x05, 0x9b, 0x6d, 0x59, 0x91, 0x5a, 0xc2, 0x67, 0xa8, 0x01,
	0xb7, 0x27, 0x20, 0x45, 0xc1, 0xfd, 0xf7, 0xd0, 0xbb, 0xb0, 0x33, 0x01, 0x27, 0x89, 0xf2, 0x3f,
	0xa7, 0xeb, 0xdd, 0x97, 0xbf, 0x2c, 0x3b, 0x00, 0x07, 0x9a, 0xda, 0xa5, 0x5e, 0x72, 0x5f, 0xd5,
	0x34, 0xb5, 0x23, 0x7c, 0xff, 0x2a, 0xd4, 0x10, 0x87, 0x62, 0x6b, 0x6a, 0x57, 0xf8, 0x01, 0xdb,
	0xae, 0xf2, 0x97, 0x03, 0x59, 0xd1, 0x70, 0x08, 0xfa, 0x21, 0xdb, 0xae, 0x31, 0x88, 0xf3, 0xfc,
	0x11, 0xda, 0x84, 0x75, 0x0a, 0x55, 0xc4, 0x8e, 0xc4, 0xf7, 0x8d, 0xf0, 0x90, 0x6e, 0x27, 0x0a,
	0xa4, 0x3b, 0x9a, 0xb2, 0x6c, 0xaa, 0x4a, 0xaf, 0xdf, 0xa1, 0x21, 0x43, 0xb7, 0x2b, 0x88, 0xe8,
	0x36, 0xdc, 0xa0, 0xbd, 0xda, 0x89, 0x3a, 0xd0, 0x64, 0x09, 0x0f, 0x3a, 0xf2, 0x21, 0x16, 0xa3,
	0x09, 0x0b, 0xfb, 0xe8, 0x6d, 0x78, 0x73, 0x42, 0x3f, 0x1f, 0xb5, 0x49, 0x6f, 0x3a, 0xea, 0xb1,
	0x84, 0x7b, 0xf2, 0x97, 0x52, 0x4b, 0x68, 0x51, 0x45, 0x66, 0x7c, 0xac, 0xa2, 0x0e, 0x0e, 0x98,
	0xac, 0x14, 0xad, 0x7d, 0x4a, 0x2f, 0x3f, 0x27, 0x22, 0xa6, 0x76, 0x2c, 0x25, 0xce, 0xef, 0xf8,
	0x3e, 0xf5, 0x42, 0x91, 0x93, 0x67, 0x77, 0xb4, 0x83, 0x64, 0x5b, 0xe7, 0x1c, 0x72, 0x2c, 0xf8,
	0x47, 0xaa, 0xac, 0x08, 0x87, 0x94, 0x0b, 0x1f, 0xa9, 0xf8, 0xe5, 0xe7, 0xd1, 0x7f, 0x05, 0x00,
	0x00, 0xff, 0xff, 0x82, 0xf8, 0x8e, 0x8c, 0x92, 0x52, 0x00, 0x00,
}