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

520 lines
17 KiB

  1. // Code generated by protoc-gen-go.
  2. // source: seaweed.proto
  3. // DO NOT EDIT!
  4. /*
  5. Package master_pb is a generated protocol buffer package.
  6. It is generated from these files:
  7. seaweed.proto
  8. It has these top-level messages:
  9. Heartbeat
  10. HeartbeatResponse
  11. VolumeInformationMessage
  12. Empty
  13. SuperBlockExtra
  14. */
  15. package master_pb
  16. import proto "github.com/golang/protobuf/proto"
  17. import fmt "fmt"
  18. import math "math"
  19. import (
  20. context "golang.org/x/net/context"
  21. grpc "google.golang.org/grpc"
  22. )
  23. // Reference imports to suppress errors if they are not otherwise used.
  24. var _ = proto.Marshal
  25. var _ = fmt.Errorf
  26. var _ = math.Inf
  27. // This is a compile-time assertion to ensure that this generated file
  28. // is compatible with the proto package it is being compiled against.
  29. // A compilation error at this line likely means your copy of the
  30. // proto package needs to be updated.
  31. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  32. type Heartbeat struct {
  33. Ip string `protobuf:"bytes,1,opt,name=ip" json:"ip,omitempty"`
  34. Port uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
  35. PublicUrl string `protobuf:"bytes,3,opt,name=public_url,json=publicUrl" json:"public_url,omitempty"`
  36. MaxVolumeCount uint32 `protobuf:"varint,4,opt,name=max_volume_count,json=maxVolumeCount" json:"max_volume_count,omitempty"`
  37. MaxFileKey uint64 `protobuf:"varint,5,opt,name=max_file_key,json=maxFileKey" json:"max_file_key,omitempty"`
  38. DataCenter string `protobuf:"bytes,6,opt,name=data_center,json=dataCenter" json:"data_center,omitempty"`
  39. Rack string `protobuf:"bytes,7,opt,name=rack" json:"rack,omitempty"`
  40. AdminPort uint32 `protobuf:"varint,8,opt,name=admin_port,json=adminPort" json:"admin_port,omitempty"`
  41. Volumes []*VolumeInformationMessage `protobuf:"bytes,9,rep,name=volumes" json:"volumes,omitempty"`
  42. }
  43. func (m *Heartbeat) Reset() { *m = Heartbeat{} }
  44. func (m *Heartbeat) String() string { return proto.CompactTextString(m) }
  45. func (*Heartbeat) ProtoMessage() {}
  46. func (*Heartbeat) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
  47. func (m *Heartbeat) GetIp() string {
  48. if m != nil {
  49. return m.Ip
  50. }
  51. return ""
  52. }
  53. func (m *Heartbeat) GetPort() uint32 {
  54. if m != nil {
  55. return m.Port
  56. }
  57. return 0
  58. }
  59. func (m *Heartbeat) GetPublicUrl() string {
  60. if m != nil {
  61. return m.PublicUrl
  62. }
  63. return ""
  64. }
  65. func (m *Heartbeat) GetMaxVolumeCount() uint32 {
  66. if m != nil {
  67. return m.MaxVolumeCount
  68. }
  69. return 0
  70. }
  71. func (m *Heartbeat) GetMaxFileKey() uint64 {
  72. if m != nil {
  73. return m.MaxFileKey
  74. }
  75. return 0
  76. }
  77. func (m *Heartbeat) GetDataCenter() string {
  78. if m != nil {
  79. return m.DataCenter
  80. }
  81. return ""
  82. }
  83. func (m *Heartbeat) GetRack() string {
  84. if m != nil {
  85. return m.Rack
  86. }
  87. return ""
  88. }
  89. func (m *Heartbeat) GetAdminPort() uint32 {
  90. if m != nil {
  91. return m.AdminPort
  92. }
  93. return 0
  94. }
  95. func (m *Heartbeat) GetVolumes() []*VolumeInformationMessage {
  96. if m != nil {
  97. return m.Volumes
  98. }
  99. return nil
  100. }
  101. type HeartbeatResponse struct {
  102. VolumeSizeLimit uint64 `protobuf:"varint,1,opt,name=volumeSizeLimit" json:"volumeSizeLimit,omitempty"`
  103. SecretKey string `protobuf:"bytes,2,opt,name=secretKey" json:"secretKey,omitempty"`
  104. Leader string `protobuf:"bytes,3,opt,name=leader" json:"leader,omitempty"`
  105. }
  106. func (m *HeartbeatResponse) Reset() { *m = HeartbeatResponse{} }
  107. func (m *HeartbeatResponse) String() string { return proto.CompactTextString(m) }
  108. func (*HeartbeatResponse) ProtoMessage() {}
  109. func (*HeartbeatResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
  110. func (m *HeartbeatResponse) GetVolumeSizeLimit() uint64 {
  111. if m != nil {
  112. return m.VolumeSizeLimit
  113. }
  114. return 0
  115. }
  116. func (m *HeartbeatResponse) GetSecretKey() string {
  117. if m != nil {
  118. return m.SecretKey
  119. }
  120. return ""
  121. }
  122. func (m *HeartbeatResponse) GetLeader() string {
  123. if m != nil {
  124. return m.Leader
  125. }
  126. return ""
  127. }
  128. type VolumeInformationMessage struct {
  129. Id uint32 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"`
  130. Size uint64 `protobuf:"varint,2,opt,name=size" json:"size,omitempty"`
  131. Collection string `protobuf:"bytes,3,opt,name=collection" json:"collection,omitempty"`
  132. FileCount uint64 `protobuf:"varint,4,opt,name=file_count,json=fileCount" json:"file_count,omitempty"`
  133. DeleteCount uint64 `protobuf:"varint,5,opt,name=delete_count,json=deleteCount" json:"delete_count,omitempty"`
  134. DeletedByteCount uint64 `protobuf:"varint,6,opt,name=deleted_byte_count,json=deletedByteCount" json:"deleted_byte_count,omitempty"`
  135. ReadOnly bool `protobuf:"varint,7,opt,name=read_only,json=readOnly" json:"read_only,omitempty"`
  136. ReplicaPlacement uint32 `protobuf:"varint,8,opt,name=replica_placement,json=replicaPlacement" json:"replica_placement,omitempty"`
  137. Version uint32 `protobuf:"varint,9,opt,name=version" json:"version,omitempty"`
  138. Ttl uint32 `protobuf:"varint,10,opt,name=ttl" json:"ttl,omitempty"`
  139. }
  140. func (m *VolumeInformationMessage) Reset() { *m = VolumeInformationMessage{} }
  141. func (m *VolumeInformationMessage) String() string { return proto.CompactTextString(m) }
  142. func (*VolumeInformationMessage) ProtoMessage() {}
  143. func (*VolumeInformationMessage) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
  144. func (m *VolumeInformationMessage) GetId() uint32 {
  145. if m != nil {
  146. return m.Id
  147. }
  148. return 0
  149. }
  150. func (m *VolumeInformationMessage) GetSize() uint64 {
  151. if m != nil {
  152. return m.Size
  153. }
  154. return 0
  155. }
  156. func (m *VolumeInformationMessage) GetCollection() string {
  157. if m != nil {
  158. return m.Collection
  159. }
  160. return ""
  161. }
  162. func (m *VolumeInformationMessage) GetFileCount() uint64 {
  163. if m != nil {
  164. return m.FileCount
  165. }
  166. return 0
  167. }
  168. func (m *VolumeInformationMessage) GetDeleteCount() uint64 {
  169. if m != nil {
  170. return m.DeleteCount
  171. }
  172. return 0
  173. }
  174. func (m *VolumeInformationMessage) GetDeletedByteCount() uint64 {
  175. if m != nil {
  176. return m.DeletedByteCount
  177. }
  178. return 0
  179. }
  180. func (m *VolumeInformationMessage) GetReadOnly() bool {
  181. if m != nil {
  182. return m.ReadOnly
  183. }
  184. return false
  185. }
  186. func (m *VolumeInformationMessage) GetReplicaPlacement() uint32 {
  187. if m != nil {
  188. return m.ReplicaPlacement
  189. }
  190. return 0
  191. }
  192. func (m *VolumeInformationMessage) GetVersion() uint32 {
  193. if m != nil {
  194. return m.Version
  195. }
  196. return 0
  197. }
  198. func (m *VolumeInformationMessage) GetTtl() uint32 {
  199. if m != nil {
  200. return m.Ttl
  201. }
  202. return 0
  203. }
  204. type Empty struct {
  205. }
  206. func (m *Empty) Reset() { *m = Empty{} }
  207. func (m *Empty) String() string { return proto.CompactTextString(m) }
  208. func (*Empty) ProtoMessage() {}
  209. func (*Empty) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
  210. type SuperBlockExtra struct {
  211. ErasureCoding *SuperBlockExtra_ErasureCoding `protobuf:"bytes,1,opt,name=erasure_coding,json=erasureCoding" json:"erasure_coding,omitempty"`
  212. }
  213. func (m *SuperBlockExtra) Reset() { *m = SuperBlockExtra{} }
  214. func (m *SuperBlockExtra) String() string { return proto.CompactTextString(m) }
  215. func (*SuperBlockExtra) ProtoMessage() {}
  216. func (*SuperBlockExtra) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
  217. func (m *SuperBlockExtra) GetErasureCoding() *SuperBlockExtra_ErasureCoding {
  218. if m != nil {
  219. return m.ErasureCoding
  220. }
  221. return nil
  222. }
  223. type SuperBlockExtra_ErasureCoding struct {
  224. Data uint32 `protobuf:"varint,1,opt,name=data" json:"data,omitempty"`
  225. Parity uint32 `protobuf:"varint,2,opt,name=parity" json:"parity,omitempty"`
  226. VolumeIds []uint32 `protobuf:"varint,3,rep,packed,name=volume_ids,json=volumeIds" json:"volume_ids,omitempty"`
  227. }
  228. func (m *SuperBlockExtra_ErasureCoding) Reset() { *m = SuperBlockExtra_ErasureCoding{} }
  229. func (m *SuperBlockExtra_ErasureCoding) String() string { return proto.CompactTextString(m) }
  230. func (*SuperBlockExtra_ErasureCoding) ProtoMessage() {}
  231. func (*SuperBlockExtra_ErasureCoding) Descriptor() ([]byte, []int) {
  232. return fileDescriptor0, []int{4, 0}
  233. }
  234. func (m *SuperBlockExtra_ErasureCoding) GetData() uint32 {
  235. if m != nil {
  236. return m.Data
  237. }
  238. return 0
  239. }
  240. func (m *SuperBlockExtra_ErasureCoding) GetParity() uint32 {
  241. if m != nil {
  242. return m.Parity
  243. }
  244. return 0
  245. }
  246. func (m *SuperBlockExtra_ErasureCoding) GetVolumeIds() []uint32 {
  247. if m != nil {
  248. return m.VolumeIds
  249. }
  250. return nil
  251. }
  252. func init() {
  253. proto.RegisterType((*Heartbeat)(nil), "master_pb.Heartbeat")
  254. proto.RegisterType((*HeartbeatResponse)(nil), "master_pb.HeartbeatResponse")
  255. proto.RegisterType((*VolumeInformationMessage)(nil), "master_pb.VolumeInformationMessage")
  256. proto.RegisterType((*Empty)(nil), "master_pb.Empty")
  257. proto.RegisterType((*SuperBlockExtra)(nil), "master_pb.SuperBlockExtra")
  258. proto.RegisterType((*SuperBlockExtra_ErasureCoding)(nil), "master_pb.SuperBlockExtra.ErasureCoding")
  259. }
  260. // Reference imports to suppress errors if they are not otherwise used.
  261. var _ context.Context
  262. var _ grpc.ClientConn
  263. // This is a compile-time assertion to ensure that this generated file
  264. // is compatible with the grpc package it is being compiled against.
  265. const _ = grpc.SupportPackageIsVersion4
  266. // Client API for Seaweed service
  267. type SeaweedClient interface {
  268. SendHeartbeat(ctx context.Context, opts ...grpc.CallOption) (Seaweed_SendHeartbeatClient, error)
  269. KeepConnected(ctx context.Context, opts ...grpc.CallOption) (Seaweed_KeepConnectedClient, error)
  270. }
  271. type seaweedClient struct {
  272. cc *grpc.ClientConn
  273. }
  274. func NewSeaweedClient(cc *grpc.ClientConn) SeaweedClient {
  275. return &seaweedClient{cc}
  276. }
  277. func (c *seaweedClient) SendHeartbeat(ctx context.Context, opts ...grpc.CallOption) (Seaweed_SendHeartbeatClient, error) {
  278. stream, err := grpc.NewClientStream(ctx, &_Seaweed_serviceDesc.Streams[0], c.cc, "/master_pb.Seaweed/SendHeartbeat", opts...)
  279. if err != nil {
  280. return nil, err
  281. }
  282. x := &seaweedSendHeartbeatClient{stream}
  283. return x, nil
  284. }
  285. type Seaweed_SendHeartbeatClient interface {
  286. Send(*Heartbeat) error
  287. Recv() (*HeartbeatResponse, error)
  288. grpc.ClientStream
  289. }
  290. type seaweedSendHeartbeatClient struct {
  291. grpc.ClientStream
  292. }
  293. func (x *seaweedSendHeartbeatClient) Send(m *Heartbeat) error {
  294. return x.ClientStream.SendMsg(m)
  295. }
  296. func (x *seaweedSendHeartbeatClient) Recv() (*HeartbeatResponse, error) {
  297. m := new(HeartbeatResponse)
  298. if err := x.ClientStream.RecvMsg(m); err != nil {
  299. return nil, err
  300. }
  301. return m, nil
  302. }
  303. func (c *seaweedClient) KeepConnected(ctx context.Context, opts ...grpc.CallOption) (Seaweed_KeepConnectedClient, error) {
  304. stream, err := grpc.NewClientStream(ctx, &_Seaweed_serviceDesc.Streams[1], c.cc, "/master_pb.Seaweed/KeepConnected", opts...)
  305. if err != nil {
  306. return nil, err
  307. }
  308. x := &seaweedKeepConnectedClient{stream}
  309. return x, nil
  310. }
  311. type Seaweed_KeepConnectedClient interface {
  312. Send(*Empty) error
  313. Recv() (*Empty, error)
  314. grpc.ClientStream
  315. }
  316. type seaweedKeepConnectedClient struct {
  317. grpc.ClientStream
  318. }
  319. func (x *seaweedKeepConnectedClient) Send(m *Empty) error {
  320. return x.ClientStream.SendMsg(m)
  321. }
  322. func (x *seaweedKeepConnectedClient) Recv() (*Empty, error) {
  323. m := new(Empty)
  324. if err := x.ClientStream.RecvMsg(m); err != nil {
  325. return nil, err
  326. }
  327. return m, nil
  328. }
  329. // Server API for Seaweed service
  330. type SeaweedServer interface {
  331. SendHeartbeat(Seaweed_SendHeartbeatServer) error
  332. KeepConnected(Seaweed_KeepConnectedServer) error
  333. }
  334. func RegisterSeaweedServer(s *grpc.Server, srv SeaweedServer) {
  335. s.RegisterService(&_Seaweed_serviceDesc, srv)
  336. }
  337. func _Seaweed_SendHeartbeat_Handler(srv interface{}, stream grpc.ServerStream) error {
  338. return srv.(SeaweedServer).SendHeartbeat(&seaweedSendHeartbeatServer{stream})
  339. }
  340. type Seaweed_SendHeartbeatServer interface {
  341. Send(*HeartbeatResponse) error
  342. Recv() (*Heartbeat, error)
  343. grpc.ServerStream
  344. }
  345. type seaweedSendHeartbeatServer struct {
  346. grpc.ServerStream
  347. }
  348. func (x *seaweedSendHeartbeatServer) Send(m *HeartbeatResponse) error {
  349. return x.ServerStream.SendMsg(m)
  350. }
  351. func (x *seaweedSendHeartbeatServer) Recv() (*Heartbeat, error) {
  352. m := new(Heartbeat)
  353. if err := x.ServerStream.RecvMsg(m); err != nil {
  354. return nil, err
  355. }
  356. return m, nil
  357. }
  358. func _Seaweed_KeepConnected_Handler(srv interface{}, stream grpc.ServerStream) error {
  359. return srv.(SeaweedServer).KeepConnected(&seaweedKeepConnectedServer{stream})
  360. }
  361. type Seaweed_KeepConnectedServer interface {
  362. Send(*Empty) error
  363. Recv() (*Empty, error)
  364. grpc.ServerStream
  365. }
  366. type seaweedKeepConnectedServer struct {
  367. grpc.ServerStream
  368. }
  369. func (x *seaweedKeepConnectedServer) Send(m *Empty) error {
  370. return x.ServerStream.SendMsg(m)
  371. }
  372. func (x *seaweedKeepConnectedServer) Recv() (*Empty, error) {
  373. m := new(Empty)
  374. if err := x.ServerStream.RecvMsg(m); err != nil {
  375. return nil, err
  376. }
  377. return m, nil
  378. }
  379. var _Seaweed_serviceDesc = grpc.ServiceDesc{
  380. ServiceName: "master_pb.Seaweed",
  381. HandlerType: (*SeaweedServer)(nil),
  382. Methods: []grpc.MethodDesc{},
  383. Streams: []grpc.StreamDesc{
  384. {
  385. StreamName: "SendHeartbeat",
  386. Handler: _Seaweed_SendHeartbeat_Handler,
  387. ServerStreams: true,
  388. ClientStreams: true,
  389. },
  390. {
  391. StreamName: "KeepConnected",
  392. Handler: _Seaweed_KeepConnected_Handler,
  393. ServerStreams: true,
  394. ClientStreams: true,
  395. },
  396. },
  397. Metadata: "seaweed.proto",
  398. }
  399. func init() { proto.RegisterFile("seaweed.proto", fileDescriptor0) }
  400. var fileDescriptor0 = []byte{
  401. // 627 bytes of a gzipped FileDescriptorProto
  402. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x74, 0x94, 0xcf, 0x6e, 0xd3, 0x40,
  403. 0x10, 0xc6, 0x71, 0x92, 0x26, 0xf5, 0xa4, 0x6e, 0xd3, 0x15, 0x42, 0x56, 0x29, 0x10, 0xc2, 0xc5,
  404. 0x12, 0x28, 0x42, 0xe5, 0xc4, 0x81, 0x4b, 0xa3, 0x22, 0xaa, 0x82, 0x5a, 0x39, 0x82, 0x03, 0x17,
  405. 0x6b, 0xe3, 0x9d, 0x56, 0xab, 0xae, 0xff, 0x68, 0x77, 0x53, 0xe2, 0xbe, 0x04, 0x4f, 0xc2, 0x2b,
  406. 0x70, 0xe2, 0xc1, 0xd0, 0x8e, 0xed, 0x34, 0x14, 0xb8, 0xcd, 0xfc, 0x66, 0xc6, 0x3b, 0xf9, 0xbe,
  407. 0xdd, 0x40, 0x60, 0x90, 0x7f, 0x43, 0x14, 0xd3, 0x52, 0x17, 0xb6, 0x60, 0x7e, 0xc6, 0x8d, 0x45,
  408. 0x9d, 0x94, 0x8b, 0xc9, 0x8f, 0x0e, 0xf8, 0x1f, 0x90, 0x6b, 0xbb, 0x40, 0x6e, 0xd9, 0x2e, 0x74,
  409. 0x64, 0x19, 0x7a, 0x63, 0x2f, 0xf2, 0xe3, 0x8e, 0x2c, 0x19, 0x83, 0x5e, 0x59, 0x68, 0x1b, 0x76,
  410. 0xc6, 0x5e, 0x14, 0xc4, 0x14, 0xb3, 0x27, 0x00, 0xe5, 0x72, 0xa1, 0x64, 0x9a, 0x2c, 0xb5, 0x0a,
  411. 0xbb, 0xd4, 0xeb, 0xd7, 0xe4, 0xb3, 0x56, 0x2c, 0x82, 0x51, 0xc6, 0x57, 0xc9, 0x4d, 0xa1, 0x96,
  412. 0x19, 0x26, 0x69, 0xb1, 0xcc, 0x6d, 0xd8, 0xa3, 0xf1, 0xdd, 0x8c, 0xaf, 0xbe, 0x10, 0x9e, 0x39,
  413. 0xca, 0xc6, 0xb0, 0xe3, 0x3a, 0x2f, 0xa5, 0xc2, 0xe4, 0x1a, 0xab, 0x70, 0x6b, 0xec, 0x45, 0xbd,
  414. 0x18, 0x32, 0xbe, 0x7a, 0x2f, 0x15, 0x9e, 0x61, 0xc5, 0x9e, 0xc1, 0x50, 0x70, 0xcb, 0x93, 0x14,
  415. 0x73, 0x8b, 0x3a, 0xec, 0xd3, 0x59, 0xe0, 0xd0, 0x8c, 0x88, 0xdb, 0x4f, 0xf3, 0xf4, 0x3a, 0x1c,
  416. 0x50, 0x85, 0x62, 0xb7, 0x1f, 0x17, 0x99, 0xcc, 0x13, 0xda, 0x7c, 0x9b, 0x8e, 0xf6, 0x89, 0x5c,
  417. 0xb8, 0xf5, 0xdf, 0xc1, 0xa0, 0xde, 0xcd, 0x84, 0xfe, 0xb8, 0x1b, 0x0d, 0x8f, 0x5e, 0x4c, 0xd7,
  418. 0x6a, 0x4c, 0xeb, 0xf5, 0x4e, 0xf3, 0xcb, 0x42, 0x67, 0xdc, 0xca, 0x22, 0xff, 0x84, 0xc6, 0xf0,
  419. 0x2b, 0x8c, 0xdb, 0x99, 0x89, 0x81, 0xfd, 0xb5, 0x5c, 0x31, 0x9a, 0xb2, 0xc8, 0x0d, 0xb2, 0x08,
  420. 0xf6, 0xea, 0xfa, 0x5c, 0xde, 0xe2, 0x47, 0x99, 0x49, 0x4b, 0x1a, 0xf6, 0xe2, 0xfb, 0x98, 0x1d,
  421. 0x82, 0x6f, 0x30, 0xd5, 0x68, 0xcf, 0xb0, 0x22, 0x55, 0xfd, 0xf8, 0x0e, 0xb0, 0x47, 0xd0, 0x57,
  422. 0xc8, 0x05, 0xea, 0x46, 0xd6, 0x26, 0x9b, 0xfc, 0xea, 0x40, 0xf8, 0xbf, 0xd5, 0xc8, 0x33, 0x41,
  423. 0xe7, 0x05, 0x71, 0x47, 0x0a, 0xa7, 0x89, 0x91, 0xb7, 0x48, 0x5f, 0xef, 0xc5, 0x14, 0xb3, 0xa7,
  424. 0x00, 0x69, 0xa1, 0x14, 0xa6, 0x6e, 0xb0, 0xf9, 0xf8, 0x06, 0x71, 0x9a, 0x91, 0x0d, 0x77, 0x76,
  425. 0xf5, 0x62, 0xdf, 0x91, 0xda, 0xa9, 0xe7, 0xb0, 0x23, 0x50, 0xa1, 0x6d, 0x1b, 0x6a, 0xa7, 0x86,
  426. 0x35, 0xab, 0x5b, 0x5e, 0x01, 0xab, 0x53, 0x91, 0x2c, 0xaa, 0x75, 0x63, 0x9f, 0x1a, 0x47, 0x4d,
  427. 0xe5, 0xb8, 0x6a, 0xbb, 0x1f, 0x83, 0xaf, 0x91, 0x8b, 0xa4, 0xc8, 0x55, 0x45, 0xe6, 0x6d, 0xc7,
  428. 0xdb, 0x0e, 0x9c, 0xe7, 0xaa, 0x62, 0x2f, 0x61, 0x5f, 0x63, 0xa9, 0x64, 0xca, 0x93, 0x52, 0xf1,
  429. 0x14, 0x33, 0xcc, 0x5b, 0x1f, 0x47, 0x4d, 0xe1, 0xa2, 0xe5, 0x2c, 0x84, 0xc1, 0x0d, 0x6a, 0xe3,
  430. 0x7e, 0x96, 0x4f, 0x2d, 0x6d, 0xca, 0x46, 0xd0, 0xb5, 0x56, 0x85, 0x40, 0xd4, 0x85, 0x93, 0x01,
  431. 0x6c, 0x9d, 0x64, 0xa5, 0xad, 0x26, 0x3f, 0x3d, 0xd8, 0x9b, 0x2f, 0x4b, 0xd4, 0xc7, 0xaa, 0x48,
  432. 0xaf, 0x4f, 0x56, 0x56, 0x73, 0x76, 0x0e, 0xbb, 0xa8, 0xb9, 0x59, 0x6a, 0xb7, 0xbb, 0x90, 0xf9,
  433. 0x15, 0x49, 0x3a, 0x3c, 0x8a, 0x36, 0xae, 0xc7, 0xbd, 0x99, 0xe9, 0x49, 0x3d, 0x30, 0xa3, 0xfe,
  434. 0x38, 0xc0, 0xcd, 0xf4, 0xe0, 0x2b, 0x04, 0x7f, 0xd4, 0x9d, 0x31, 0xee, 0xea, 0x36, 0x56, 0x51,
  435. 0xec, 0x1c, 0x2f, 0xb9, 0x96, 0xb6, 0x6a, 0x9e, 0x58, 0x93, 0x39, 0x43, 0x9a, 0x17, 0x24, 0x85,
  436. 0x09, 0xbb, 0xe3, 0xae, 0xbb, 0xc4, 0x35, 0x39, 0x15, 0xe6, 0xe8, 0xbb, 0x07, 0x83, 0x79, 0xfd,
  437. 0xa4, 0xd9, 0x29, 0x04, 0x73, 0xcc, 0xc5, 0xdd, 0x23, 0x7e, 0xb8, 0xb1, 0xf1, 0x9a, 0x1e, 0x1c,
  438. 0xfe, 0x8b, 0xb6, 0x37, 0x78, 0xf2, 0x20, 0xf2, 0x5e, 0x7b, 0xec, 0x2d, 0x04, 0x67, 0x88, 0xe5,
  439. 0xac, 0xc8, 0x73, 0x4c, 0x2d, 0x0a, 0x36, 0xda, 0x18, 0x22, 0xe9, 0x0e, 0xfe, 0x22, 0xf5, 0xe8,
  440. 0xa2, 0x4f, 0xff, 0x2c, 0x6f, 0x7e, 0x07, 0x00, 0x00, 0xff, 0xff, 0x73, 0x2b, 0x68, 0x15, 0x6a,
  441. 0x04, 0x00, 0x00,
  442. }