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.
 
 
 

547 lines
20 KiB

  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // source: google/bigtable/admin/table/v1/bigtable_table_data.proto
  3. package table // import "google.golang.org/genproto/googleapis/bigtable/admin/table/v1"
  4. import proto "github.com/golang/protobuf/proto"
  5. import fmt "fmt"
  6. import math "math"
  7. import duration "github.com/golang/protobuf/ptypes/duration"
  8. import longrunning "google.golang.org/genproto/googleapis/longrunning"
  9. // Reference imports to suppress errors if they are not otherwise used.
  10. var _ = proto.Marshal
  11. var _ = fmt.Errorf
  12. var _ = math.Inf
  13. // This is a compile-time assertion to ensure that this generated file
  14. // is compatible with the proto package it is being compiled against.
  15. // A compilation error at this line likely means your copy of the
  16. // proto package needs to be updated.
  17. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  18. type Table_TimestampGranularity int32
  19. const (
  20. Table_MILLIS Table_TimestampGranularity = 0
  21. )
  22. var Table_TimestampGranularity_name = map[int32]string{
  23. 0: "MILLIS",
  24. }
  25. var Table_TimestampGranularity_value = map[string]int32{
  26. "MILLIS": 0,
  27. }
  28. func (x Table_TimestampGranularity) String() string {
  29. return proto.EnumName(Table_TimestampGranularity_name, int32(x))
  30. }
  31. func (Table_TimestampGranularity) EnumDescriptor() ([]byte, []int) {
  32. return fileDescriptor_bigtable_table_data_6acea65365f81b1c, []int{0, 0}
  33. }
  34. // A collection of user data indexed by row, column, and timestamp.
  35. // Each table is served using the resources of its parent cluster.
  36. type Table struct {
  37. // A unique identifier of the form
  38. // <cluster_name>/tables/[_a-zA-Z0-9][-_.a-zA-Z0-9]*
  39. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  40. // If this Table is in the process of being created, the Operation used to
  41. // track its progress. As long as this operation is present, the Table will
  42. // not accept any Table Admin or Read/Write requests.
  43. CurrentOperation *longrunning.Operation `protobuf:"bytes,2,opt,name=current_operation,json=currentOperation,proto3" json:"current_operation,omitempty"`
  44. // The column families configured for this table, mapped by column family id.
  45. ColumnFamilies map[string]*ColumnFamily `protobuf:"bytes,3,rep,name=column_families,json=columnFamilies,proto3" json:"column_families,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  46. // The granularity (e.g. MILLIS, MICROS) at which timestamps are stored in
  47. // this table. Timestamps not matching the granularity will be rejected.
  48. // Cannot be changed once the table is created.
  49. Granularity Table_TimestampGranularity `protobuf:"varint,4,opt,name=granularity,proto3,enum=google.bigtable.admin.table.v1.Table_TimestampGranularity" json:"granularity,omitempty"`
  50. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  51. XXX_unrecognized []byte `json:"-"`
  52. XXX_sizecache int32 `json:"-"`
  53. }
  54. func (m *Table) Reset() { *m = Table{} }
  55. func (m *Table) String() string { return proto.CompactTextString(m) }
  56. func (*Table) ProtoMessage() {}
  57. func (*Table) Descriptor() ([]byte, []int) {
  58. return fileDescriptor_bigtable_table_data_6acea65365f81b1c, []int{0}
  59. }
  60. func (m *Table) XXX_Unmarshal(b []byte) error {
  61. return xxx_messageInfo_Table.Unmarshal(m, b)
  62. }
  63. func (m *Table) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  64. return xxx_messageInfo_Table.Marshal(b, m, deterministic)
  65. }
  66. func (dst *Table) XXX_Merge(src proto.Message) {
  67. xxx_messageInfo_Table.Merge(dst, src)
  68. }
  69. func (m *Table) XXX_Size() int {
  70. return xxx_messageInfo_Table.Size(m)
  71. }
  72. func (m *Table) XXX_DiscardUnknown() {
  73. xxx_messageInfo_Table.DiscardUnknown(m)
  74. }
  75. var xxx_messageInfo_Table proto.InternalMessageInfo
  76. func (m *Table) GetName() string {
  77. if m != nil {
  78. return m.Name
  79. }
  80. return ""
  81. }
  82. func (m *Table) GetCurrentOperation() *longrunning.Operation {
  83. if m != nil {
  84. return m.CurrentOperation
  85. }
  86. return nil
  87. }
  88. func (m *Table) GetColumnFamilies() map[string]*ColumnFamily {
  89. if m != nil {
  90. return m.ColumnFamilies
  91. }
  92. return nil
  93. }
  94. func (m *Table) GetGranularity() Table_TimestampGranularity {
  95. if m != nil {
  96. return m.Granularity
  97. }
  98. return Table_MILLIS
  99. }
  100. // A set of columns within a table which share a common configuration.
  101. type ColumnFamily struct {
  102. // A unique identifier of the form <table_name>/columnFamilies/[-_.a-zA-Z0-9]+
  103. // The last segment is the same as the "name" field in
  104. // google.bigtable.v1.Family.
  105. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  106. // Garbage collection expression specified by the following grammar:
  107. // GC = EXPR
  108. // | "" ;
  109. // EXPR = EXPR, "||", EXPR (* lowest precedence *)
  110. // | EXPR, "&&", EXPR
  111. // | "(", EXPR, ")" (* highest precedence *)
  112. // | PROP ;
  113. // PROP = "version() >", NUM32
  114. // | "age() >", NUM64, [ UNIT ] ;
  115. // NUM32 = non-zero-digit { digit } ; (* # NUM32 <= 2^32 - 1 *)
  116. // NUM64 = non-zero-digit { digit } ; (* # NUM64 <= 2^63 - 1 *)
  117. // UNIT = "d" | "h" | "m" (* d=days, h=hours, m=minutes, else micros *)
  118. // GC expressions can be up to 500 characters in length
  119. //
  120. // The different types of PROP are defined as follows:
  121. // version() - cell index, counting from most recent and starting at 1
  122. // age() - age of the cell (current time minus cell timestamp)
  123. //
  124. // Example: "version() > 3 || (age() > 3d && version() > 1)"
  125. // drop cells beyond the most recent three, and drop cells older than three
  126. // days unless they're the most recent cell in the row/column
  127. //
  128. // Garbage collection executes opportunistically in the background, and so
  129. // it's possible for reads to return a cell even if it matches the active GC
  130. // expression for its family.
  131. GcExpression string `protobuf:"bytes,2,opt,name=gc_expression,json=gcExpression,proto3" json:"gc_expression,omitempty"`
  132. // Garbage collection rule specified as a protobuf.
  133. // Supersedes `gc_expression`.
  134. // Must serialize to at most 500 bytes.
  135. //
  136. // NOTE: Garbage collection executes opportunistically in the background, and
  137. // so it's possible for reads to return a cell even if it matches the active
  138. // GC expression for its family.
  139. GcRule *GcRule `protobuf:"bytes,3,opt,name=gc_rule,json=gcRule,proto3" json:"gc_rule,omitempty"`
  140. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  141. XXX_unrecognized []byte `json:"-"`
  142. XXX_sizecache int32 `json:"-"`
  143. }
  144. func (m *ColumnFamily) Reset() { *m = ColumnFamily{} }
  145. func (m *ColumnFamily) String() string { return proto.CompactTextString(m) }
  146. func (*ColumnFamily) ProtoMessage() {}
  147. func (*ColumnFamily) Descriptor() ([]byte, []int) {
  148. return fileDescriptor_bigtable_table_data_6acea65365f81b1c, []int{1}
  149. }
  150. func (m *ColumnFamily) XXX_Unmarshal(b []byte) error {
  151. return xxx_messageInfo_ColumnFamily.Unmarshal(m, b)
  152. }
  153. func (m *ColumnFamily) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  154. return xxx_messageInfo_ColumnFamily.Marshal(b, m, deterministic)
  155. }
  156. func (dst *ColumnFamily) XXX_Merge(src proto.Message) {
  157. xxx_messageInfo_ColumnFamily.Merge(dst, src)
  158. }
  159. func (m *ColumnFamily) XXX_Size() int {
  160. return xxx_messageInfo_ColumnFamily.Size(m)
  161. }
  162. func (m *ColumnFamily) XXX_DiscardUnknown() {
  163. xxx_messageInfo_ColumnFamily.DiscardUnknown(m)
  164. }
  165. var xxx_messageInfo_ColumnFamily proto.InternalMessageInfo
  166. func (m *ColumnFamily) GetName() string {
  167. if m != nil {
  168. return m.Name
  169. }
  170. return ""
  171. }
  172. func (m *ColumnFamily) GetGcExpression() string {
  173. if m != nil {
  174. return m.GcExpression
  175. }
  176. return ""
  177. }
  178. func (m *ColumnFamily) GetGcRule() *GcRule {
  179. if m != nil {
  180. return m.GcRule
  181. }
  182. return nil
  183. }
  184. // Rule for determining which cells to delete during garbage collection.
  185. type GcRule struct {
  186. // Types that are valid to be assigned to Rule:
  187. // *GcRule_MaxNumVersions
  188. // *GcRule_MaxAge
  189. // *GcRule_Intersection_
  190. // *GcRule_Union_
  191. Rule isGcRule_Rule `protobuf_oneof:"rule"`
  192. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  193. XXX_unrecognized []byte `json:"-"`
  194. XXX_sizecache int32 `json:"-"`
  195. }
  196. func (m *GcRule) Reset() { *m = GcRule{} }
  197. func (m *GcRule) String() string { return proto.CompactTextString(m) }
  198. func (*GcRule) ProtoMessage() {}
  199. func (*GcRule) Descriptor() ([]byte, []int) {
  200. return fileDescriptor_bigtable_table_data_6acea65365f81b1c, []int{2}
  201. }
  202. func (m *GcRule) XXX_Unmarshal(b []byte) error {
  203. return xxx_messageInfo_GcRule.Unmarshal(m, b)
  204. }
  205. func (m *GcRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  206. return xxx_messageInfo_GcRule.Marshal(b, m, deterministic)
  207. }
  208. func (dst *GcRule) XXX_Merge(src proto.Message) {
  209. xxx_messageInfo_GcRule.Merge(dst, src)
  210. }
  211. func (m *GcRule) XXX_Size() int {
  212. return xxx_messageInfo_GcRule.Size(m)
  213. }
  214. func (m *GcRule) XXX_DiscardUnknown() {
  215. xxx_messageInfo_GcRule.DiscardUnknown(m)
  216. }
  217. var xxx_messageInfo_GcRule proto.InternalMessageInfo
  218. type isGcRule_Rule interface {
  219. isGcRule_Rule()
  220. }
  221. type GcRule_MaxNumVersions struct {
  222. MaxNumVersions int32 `protobuf:"varint,1,opt,name=max_num_versions,json=maxNumVersions,proto3,oneof"`
  223. }
  224. type GcRule_MaxAge struct {
  225. MaxAge *duration.Duration `protobuf:"bytes,2,opt,name=max_age,json=maxAge,proto3,oneof"`
  226. }
  227. type GcRule_Intersection_ struct {
  228. Intersection *GcRule_Intersection `protobuf:"bytes,3,opt,name=intersection,proto3,oneof"`
  229. }
  230. type GcRule_Union_ struct {
  231. Union *GcRule_Union `protobuf:"bytes,4,opt,name=union,proto3,oneof"`
  232. }
  233. func (*GcRule_MaxNumVersions) isGcRule_Rule() {}
  234. func (*GcRule_MaxAge) isGcRule_Rule() {}
  235. func (*GcRule_Intersection_) isGcRule_Rule() {}
  236. func (*GcRule_Union_) isGcRule_Rule() {}
  237. func (m *GcRule) GetRule() isGcRule_Rule {
  238. if m != nil {
  239. return m.Rule
  240. }
  241. return nil
  242. }
  243. func (m *GcRule) GetMaxNumVersions() int32 {
  244. if x, ok := m.GetRule().(*GcRule_MaxNumVersions); ok {
  245. return x.MaxNumVersions
  246. }
  247. return 0
  248. }
  249. func (m *GcRule) GetMaxAge() *duration.Duration {
  250. if x, ok := m.GetRule().(*GcRule_MaxAge); ok {
  251. return x.MaxAge
  252. }
  253. return nil
  254. }
  255. func (m *GcRule) GetIntersection() *GcRule_Intersection {
  256. if x, ok := m.GetRule().(*GcRule_Intersection_); ok {
  257. return x.Intersection
  258. }
  259. return nil
  260. }
  261. func (m *GcRule) GetUnion() *GcRule_Union {
  262. if x, ok := m.GetRule().(*GcRule_Union_); ok {
  263. return x.Union
  264. }
  265. return nil
  266. }
  267. // XXX_OneofFuncs is for the internal use of the proto package.
  268. func (*GcRule) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
  269. return _GcRule_OneofMarshaler, _GcRule_OneofUnmarshaler, _GcRule_OneofSizer, []interface{}{
  270. (*GcRule_MaxNumVersions)(nil),
  271. (*GcRule_MaxAge)(nil),
  272. (*GcRule_Intersection_)(nil),
  273. (*GcRule_Union_)(nil),
  274. }
  275. }
  276. func _GcRule_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  277. m := msg.(*GcRule)
  278. // rule
  279. switch x := m.Rule.(type) {
  280. case *GcRule_MaxNumVersions:
  281. b.EncodeVarint(1<<3 | proto.WireVarint)
  282. b.EncodeVarint(uint64(x.MaxNumVersions))
  283. case *GcRule_MaxAge:
  284. b.EncodeVarint(2<<3 | proto.WireBytes)
  285. if err := b.EncodeMessage(x.MaxAge); err != nil {
  286. return err
  287. }
  288. case *GcRule_Intersection_:
  289. b.EncodeVarint(3<<3 | proto.WireBytes)
  290. if err := b.EncodeMessage(x.Intersection); err != nil {
  291. return err
  292. }
  293. case *GcRule_Union_:
  294. b.EncodeVarint(4<<3 | proto.WireBytes)
  295. if err := b.EncodeMessage(x.Union); err != nil {
  296. return err
  297. }
  298. case nil:
  299. default:
  300. return fmt.Errorf("GcRule.Rule has unexpected type %T", x)
  301. }
  302. return nil
  303. }
  304. func _GcRule_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  305. m := msg.(*GcRule)
  306. switch tag {
  307. case 1: // rule.max_num_versions
  308. if wire != proto.WireVarint {
  309. return true, proto.ErrInternalBadWireType
  310. }
  311. x, err := b.DecodeVarint()
  312. m.Rule = &GcRule_MaxNumVersions{int32(x)}
  313. return true, err
  314. case 2: // rule.max_age
  315. if wire != proto.WireBytes {
  316. return true, proto.ErrInternalBadWireType
  317. }
  318. msg := new(duration.Duration)
  319. err := b.DecodeMessage(msg)
  320. m.Rule = &GcRule_MaxAge{msg}
  321. return true, err
  322. case 3: // rule.intersection
  323. if wire != proto.WireBytes {
  324. return true, proto.ErrInternalBadWireType
  325. }
  326. msg := new(GcRule_Intersection)
  327. err := b.DecodeMessage(msg)
  328. m.Rule = &GcRule_Intersection_{msg}
  329. return true, err
  330. case 4: // rule.union
  331. if wire != proto.WireBytes {
  332. return true, proto.ErrInternalBadWireType
  333. }
  334. msg := new(GcRule_Union)
  335. err := b.DecodeMessage(msg)
  336. m.Rule = &GcRule_Union_{msg}
  337. return true, err
  338. default:
  339. return false, nil
  340. }
  341. }
  342. func _GcRule_OneofSizer(msg proto.Message) (n int) {
  343. m := msg.(*GcRule)
  344. // rule
  345. switch x := m.Rule.(type) {
  346. case *GcRule_MaxNumVersions:
  347. n += 1 // tag and wire
  348. n += proto.SizeVarint(uint64(x.MaxNumVersions))
  349. case *GcRule_MaxAge:
  350. s := proto.Size(x.MaxAge)
  351. n += 1 // tag and wire
  352. n += proto.SizeVarint(uint64(s))
  353. n += s
  354. case *GcRule_Intersection_:
  355. s := proto.Size(x.Intersection)
  356. n += 1 // tag and wire
  357. n += proto.SizeVarint(uint64(s))
  358. n += s
  359. case *GcRule_Union_:
  360. s := proto.Size(x.Union)
  361. n += 1 // tag and wire
  362. n += proto.SizeVarint(uint64(s))
  363. n += s
  364. case nil:
  365. default:
  366. panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  367. }
  368. return n
  369. }
  370. // A GcRule which deletes cells matching all of the given rules.
  371. type GcRule_Intersection struct {
  372. // Only delete cells which would be deleted by every element of `rules`.
  373. Rules []*GcRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
  374. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  375. XXX_unrecognized []byte `json:"-"`
  376. XXX_sizecache int32 `json:"-"`
  377. }
  378. func (m *GcRule_Intersection) Reset() { *m = GcRule_Intersection{} }
  379. func (m *GcRule_Intersection) String() string { return proto.CompactTextString(m) }
  380. func (*GcRule_Intersection) ProtoMessage() {}
  381. func (*GcRule_Intersection) Descriptor() ([]byte, []int) {
  382. return fileDescriptor_bigtable_table_data_6acea65365f81b1c, []int{2, 0}
  383. }
  384. func (m *GcRule_Intersection) XXX_Unmarshal(b []byte) error {
  385. return xxx_messageInfo_GcRule_Intersection.Unmarshal(m, b)
  386. }
  387. func (m *GcRule_Intersection) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  388. return xxx_messageInfo_GcRule_Intersection.Marshal(b, m, deterministic)
  389. }
  390. func (dst *GcRule_Intersection) XXX_Merge(src proto.Message) {
  391. xxx_messageInfo_GcRule_Intersection.Merge(dst, src)
  392. }
  393. func (m *GcRule_Intersection) XXX_Size() int {
  394. return xxx_messageInfo_GcRule_Intersection.Size(m)
  395. }
  396. func (m *GcRule_Intersection) XXX_DiscardUnknown() {
  397. xxx_messageInfo_GcRule_Intersection.DiscardUnknown(m)
  398. }
  399. var xxx_messageInfo_GcRule_Intersection proto.InternalMessageInfo
  400. func (m *GcRule_Intersection) GetRules() []*GcRule {
  401. if m != nil {
  402. return m.Rules
  403. }
  404. return nil
  405. }
  406. // A GcRule which deletes cells matching any of the given rules.
  407. type GcRule_Union struct {
  408. // Delete cells which would be deleted by any element of `rules`.
  409. Rules []*GcRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
  410. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  411. XXX_unrecognized []byte `json:"-"`
  412. XXX_sizecache int32 `json:"-"`
  413. }
  414. func (m *GcRule_Union) Reset() { *m = GcRule_Union{} }
  415. func (m *GcRule_Union) String() string { return proto.CompactTextString(m) }
  416. func (*GcRule_Union) ProtoMessage() {}
  417. func (*GcRule_Union) Descriptor() ([]byte, []int) {
  418. return fileDescriptor_bigtable_table_data_6acea65365f81b1c, []int{2, 1}
  419. }
  420. func (m *GcRule_Union) XXX_Unmarshal(b []byte) error {
  421. return xxx_messageInfo_GcRule_Union.Unmarshal(m, b)
  422. }
  423. func (m *GcRule_Union) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  424. return xxx_messageInfo_GcRule_Union.Marshal(b, m, deterministic)
  425. }
  426. func (dst *GcRule_Union) XXX_Merge(src proto.Message) {
  427. xxx_messageInfo_GcRule_Union.Merge(dst, src)
  428. }
  429. func (m *GcRule_Union) XXX_Size() int {
  430. return xxx_messageInfo_GcRule_Union.Size(m)
  431. }
  432. func (m *GcRule_Union) XXX_DiscardUnknown() {
  433. xxx_messageInfo_GcRule_Union.DiscardUnknown(m)
  434. }
  435. var xxx_messageInfo_GcRule_Union proto.InternalMessageInfo
  436. func (m *GcRule_Union) GetRules() []*GcRule {
  437. if m != nil {
  438. return m.Rules
  439. }
  440. return nil
  441. }
  442. func init() {
  443. proto.RegisterType((*Table)(nil), "google.bigtable.admin.table.v1.Table")
  444. proto.RegisterMapType((map[string]*ColumnFamily)(nil), "google.bigtable.admin.table.v1.Table.ColumnFamiliesEntry")
  445. proto.RegisterType((*ColumnFamily)(nil), "google.bigtable.admin.table.v1.ColumnFamily")
  446. proto.RegisterType((*GcRule)(nil), "google.bigtable.admin.table.v1.GcRule")
  447. proto.RegisterType((*GcRule_Intersection)(nil), "google.bigtable.admin.table.v1.GcRule.Intersection")
  448. proto.RegisterType((*GcRule_Union)(nil), "google.bigtable.admin.table.v1.GcRule.Union")
  449. proto.RegisterEnum("google.bigtable.admin.table.v1.Table_TimestampGranularity", Table_TimestampGranularity_name, Table_TimestampGranularity_value)
  450. }
  451. func init() {
  452. proto.RegisterFile("google/bigtable/admin/table/v1/bigtable_table_data.proto", fileDescriptor_bigtable_table_data_6acea65365f81b1c)
  453. }
  454. var fileDescriptor_bigtable_table_data_6acea65365f81b1c = []byte{
  455. // 579 bytes of a gzipped FileDescriptorProto
  456. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0x61, 0x6b, 0xd3, 0x40,
  457. 0x18, 0xc7, 0x9b, 0xa5, 0xed, 0xd8, 0xb3, 0x3a, 0xeb, 0x29, 0x52, 0x0b, 0x4a, 0xc9, 0x40, 0x8a,
  458. 0xc8, 0x85, 0x6d, 0xbe, 0x98, 0x53, 0x10, 0xbb, 0xcd, 0x6d, 0x32, 0x75, 0xc4, 0x29, 0x28, 0x42,
  459. 0xb8, 0x66, 0xb7, 0x23, 0x98, 0xbb, 0x2b, 0x97, 0x5c, 0x69, 0x5f, 0xfb, 0xc6, 0x8f, 0xe2, 0xa7,
  460. 0xf0, 0xb3, 0x49, 0xee, 0x2e, 0x35, 0x83, 0xe9, 0x26, 0xbe, 0x49, 0x9e, 0x3c, 0xf7, 0xfc, 0x7f,
  461. 0xf7, 0xcf, 0xf3, 0x5c, 0x02, 0xdb, 0x4c, 0x4a, 0x96, 0xd1, 0x70, 0x9c, 0xb2, 0x82, 0x8c, 0x33,
  462. 0x1a, 0x92, 0x33, 0x9e, 0x8a, 0xd0, 0xc6, 0xd3, 0x8d, 0x45, 0x3e, 0xb6, 0xd7, 0x33, 0x52, 0x10,
  463. 0x3c, 0x51, 0xb2, 0x90, 0xe8, 0x81, 0x55, 0xe2, 0xaa, 0x02, 0x1b, 0x25, 0xb6, 0xf1, 0x74, 0xa3,
  464. 0xbf, 0xee, 0xc8, 0x99, 0x14, 0x4c, 0x69, 0x21, 0x52, 0xc1, 0x42, 0x39, 0xa1, 0x8a, 0x14, 0xa9,
  465. 0x14, 0xb9, 0x85, 0xf4, 0x1d, 0x24, 0x34, 0x4f, 0x63, 0x7d, 0x1e, 0x9e, 0x69, 0x5b, 0x60, 0xd7,
  466. 0x83, 0x9f, 0x3e, 0xb4, 0x4e, 0x4b, 0x22, 0x42, 0xd0, 0x14, 0x84, 0xd3, 0x9e, 0x37, 0xf0, 0x86,
  467. 0x2b, 0x91, 0x89, 0xd1, 0x6b, 0xb8, 0x95, 0x68, 0xa5, 0xa8, 0x28, 0xe2, 0x05, 0xb9, 0xb7, 0x34,
  468. 0xf0, 0x86, 0xab, 0x9b, 0xf7, 0xb1, 0xb3, 0x57, 0xdb, 0x1e, 0xbf, 0xab, 0x8a, 0xa2, 0xae, 0xd3,
  469. 0x2d, 0x32, 0x68, 0x0c, 0x37, 0x13, 0x99, 0x69, 0x2e, 0xe2, 0x73, 0xc2, 0xd3, 0x2c, 0xa5, 0x79,
  470. 0xcf, 0x1f, 0xf8, 0xc3, 0xd5, 0xcd, 0xa7, 0xf8, 0xef, 0x2f, 0x8a, 0x8d, 0x3f, 0xbc, 0x6b, 0xc4,
  471. 0xaf, 0x9c, 0x76, 0x5f, 0x14, 0x6a, 0x1e, 0xad, 0x25, 0x17, 0x92, 0xe8, 0x0b, 0xac, 0x32, 0x45,
  472. 0x84, 0xce, 0x88, 0x4a, 0x8b, 0x79, 0xaf, 0x39, 0xf0, 0x86, 0x6b, 0x9b, 0x3b, 0xd7, 0xe3, 0x9f,
  473. 0xa6, 0x9c, 0xe6, 0x05, 0xe1, 0x93, 0x83, 0xdf, 0x84, 0xa8, 0x8e, 0xeb, 0x4b, 0xb8, 0x7d, 0x89,
  474. 0x09, 0xd4, 0x05, 0xff, 0x2b, 0x9d, 0xbb, 0xbe, 0x95, 0x21, 0x1a, 0x41, 0x6b, 0x4a, 0x32, 0x4d,
  475. 0x5d, 0xab, 0x1e, 0x5f, 0x65, 0xa0, 0x46, 0x9d, 0x47, 0x56, 0xba, 0xb3, 0xb4, 0xed, 0x05, 0x01,
  476. 0xdc, 0xb9, 0xcc, 0x15, 0x02, 0x68, 0xbf, 0x39, 0x3a, 0x3e, 0x3e, 0x7a, 0xdf, 0x6d, 0x04, 0xdf,
  477. 0x3d, 0xe8, 0xd4, 0xf5, 0x97, 0xce, 0x71, 0x1d, 0x6e, 0xb0, 0x24, 0xa6, 0xb3, 0x89, 0xa2, 0x79,
  478. 0x5e, 0xcd, 0x70, 0x25, 0xea, 0xb0, 0x64, 0x7f, 0x91, 0x43, 0x2f, 0x60, 0x99, 0x25, 0xb1, 0xd2,
  479. 0x19, 0xed, 0xf9, 0xc6, 0xf7, 0xc3, 0xab, 0x7c, 0x1f, 0x24, 0x91, 0xce, 0x68, 0xd4, 0x66, 0xe6,
  480. 0x1e, 0xfc, 0xf0, 0xa1, 0x6d, 0x53, 0xe8, 0x11, 0x74, 0x39, 0x99, 0xc5, 0x42, 0xf3, 0x78, 0x4a,
  481. 0x55, 0x89, 0xcf, 0x8d, 0xa1, 0xd6, 0x61, 0x23, 0x5a, 0xe3, 0x64, 0xf6, 0x56, 0xf3, 0x8f, 0x2e,
  482. 0x8f, 0x9e, 0xc0, 0x72, 0x59, 0x4b, 0x58, 0xd5, 0xaf, 0x7b, 0xd5, 0xbe, 0xd5, 0xa1, 0xc5, 0x7b,
  483. 0xee, 0xd0, 0x1e, 0x36, 0xa2, 0x36, 0x27, 0xb3, 0x97, 0x8c, 0xa2, 0x4f, 0xd0, 0x49, 0x45, 0x41,
  484. 0x55, 0x4e, 0x13, 0x73, 0x2a, 0xad, 0xe5, 0xad, 0xeb, 0x59, 0xc6, 0x47, 0x35, 0xe9, 0x61, 0x23,
  485. 0xba, 0x80, 0x42, 0x7b, 0xd0, 0xd2, 0xa2, 0x64, 0x36, 0xaf, 0x37, 0x3e, 0xc7, 0xfc, 0x20, 0x2c,
  486. 0xcc, 0x8a, 0xfb, 0xc7, 0xd0, 0xa9, 0xef, 0x82, 0x9e, 0x43, 0xab, 0xec, 0x6d, 0xd9, 0x07, 0xff,
  487. 0x1f, 0x9a, 0x6b, 0x45, 0xfd, 0x7d, 0x68, 0x19, 0xfe, 0xff, 0x61, 0x46, 0x6d, 0x68, 0x96, 0xc1,
  488. 0xe8, 0x9b, 0x07, 0x41, 0x22, 0xf9, 0x15, 0xe2, 0xd1, 0xdd, 0x91, 0x5b, 0x30, 0x9f, 0xc8, 0x1e,
  489. 0x29, 0xc8, 0x49, 0x39, 0x92, 0x13, 0xef, 0xf3, 0xae, 0x53, 0x32, 0x99, 0x11, 0xc1, 0xb0, 0x54,
  490. 0x2c, 0x64, 0x54, 0x98, 0x81, 0x85, 0x76, 0x89, 0x4c, 0xd2, 0xfc, 0x4f, 0x7f, 0xbd, 0x67, 0x26,
  491. 0x18, 0xb7, 0x4d, 0xfd, 0xd6, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd7, 0x80, 0x76, 0xdc, 0x24,
  492. 0x05, 0x00, 0x00,
  493. }