tsdb_plugin.pb.go 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509
  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // source: tsdb_plugin.proto
  3. /*
  4. Package proto is a generated protocol buffer package.
  5. It is generated from these files:
  6. tsdb_plugin.proto
  7. It has these top-level messages:
  8. TsdbQuery
  9. Query
  10. Timerange
  11. Response
  12. QueryResult
  13. DatasourceInfo
  14. TimeSeries
  15. Point
  16. */
  17. package proto
  18. import proto1 "github.com/golang/protobuf/proto"
  19. import fmt "fmt"
  20. import math "math"
  21. import google_protobuf "github.com/golang/protobuf/ptypes/timestamp"
  22. import (
  23. context "golang.org/x/net/context"
  24. grpc "google.golang.org/grpc"
  25. )
  26. // Reference imports to suppress errors if they are not otherwise used.
  27. var _ = proto1.Marshal
  28. var _ = fmt.Errorf
  29. var _ = math.Inf
  30. // This is a compile-time assertion to ensure that this generated file
  31. // is compatible with the proto package it is being compiled against.
  32. // A compilation error at this line likely means your copy of the
  33. // proto package needs to be updated.
  34. const _ = proto1.ProtoPackageIsVersion2 // please upgrade the proto package
  35. type TsdbQuery struct {
  36. Timerange *Timerange `protobuf:"bytes,1,opt,name=timerange" json:"timerange,omitempty"`
  37. Datasource *DatasourceInfo `protobuf:"bytes,2,opt,name=datasource" json:"datasource,omitempty"`
  38. Queries []*Query `protobuf:"bytes,3,rep,name=queries" json:"queries,omitempty"`
  39. }
  40. func (m *TsdbQuery) Reset() { *m = TsdbQuery{} }
  41. func (m *TsdbQuery) String() string { return proto1.CompactTextString(m) }
  42. func (*TsdbQuery) ProtoMessage() {}
  43. func (*TsdbQuery) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
  44. func (m *TsdbQuery) GetTimerange() *Timerange {
  45. if m != nil {
  46. return m.Timerange
  47. }
  48. return nil
  49. }
  50. func (m *TsdbQuery) GetDatasource() *DatasourceInfo {
  51. if m != nil {
  52. return m.Datasource
  53. }
  54. return nil
  55. }
  56. func (m *TsdbQuery) GetQueries() []*Query {
  57. if m != nil {
  58. return m.Queries
  59. }
  60. return nil
  61. }
  62. type Query struct {
  63. RefId string `protobuf:"bytes,1,opt,name=refId" json:"refId,omitempty"`
  64. ModelJson string `protobuf:"bytes,2,opt,name=modelJson" json:"modelJson,omitempty"`
  65. MaxDataPoints int64 `protobuf:"varint,3,opt,name=MaxDataPoints" json:"MaxDataPoints,omitempty"`
  66. IntervalMs int64 `protobuf:"varint,4,opt,name=intervalMs" json:"intervalMs,omitempty"`
  67. Datasource *DatasourceInfo `protobuf:"bytes,5,opt,name=datasource" json:"datasource,omitempty"`
  68. }
  69. func (m *Query) Reset() { *m = Query{} }
  70. func (m *Query) String() string { return proto1.CompactTextString(m) }
  71. func (*Query) ProtoMessage() {}
  72. func (*Query) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
  73. func (m *Query) GetRefId() string {
  74. if m != nil {
  75. return m.RefId
  76. }
  77. return ""
  78. }
  79. func (m *Query) GetModelJson() string {
  80. if m != nil {
  81. return m.ModelJson
  82. }
  83. return ""
  84. }
  85. func (m *Query) GetMaxDataPoints() int64 {
  86. if m != nil {
  87. return m.MaxDataPoints
  88. }
  89. return 0
  90. }
  91. func (m *Query) GetIntervalMs() int64 {
  92. if m != nil {
  93. return m.IntervalMs
  94. }
  95. return 0
  96. }
  97. func (m *Query) GetDatasource() *DatasourceInfo {
  98. if m != nil {
  99. return m.Datasource
  100. }
  101. return nil
  102. }
  103. type Timerange struct {
  104. From string `protobuf:"bytes,1,opt,name=from" json:"from,omitempty"`
  105. To string `protobuf:"bytes,2,opt,name=to" json:"to,omitempty"`
  106. Now *google_protobuf.Timestamp `protobuf:"bytes,3,opt,name=now" json:"now,omitempty"`
  107. }
  108. func (m *Timerange) Reset() { *m = Timerange{} }
  109. func (m *Timerange) String() string { return proto1.CompactTextString(m) }
  110. func (*Timerange) ProtoMessage() {}
  111. func (*Timerange) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
  112. func (m *Timerange) GetFrom() string {
  113. if m != nil {
  114. return m.From
  115. }
  116. return ""
  117. }
  118. func (m *Timerange) GetTo() string {
  119. if m != nil {
  120. return m.To
  121. }
  122. return ""
  123. }
  124. func (m *Timerange) GetNow() *google_protobuf.Timestamp {
  125. if m != nil {
  126. return m.Now
  127. }
  128. return nil
  129. }
  130. type Response struct {
  131. Message string `protobuf:"bytes,1,opt,name=message" json:"message,omitempty"`
  132. Results []*QueryResult `protobuf:"bytes,2,rep,name=results" json:"results,omitempty"`
  133. }
  134. func (m *Response) Reset() { *m = Response{} }
  135. func (m *Response) String() string { return proto1.CompactTextString(m) }
  136. func (*Response) ProtoMessage() {}
  137. func (*Response) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
  138. func (m *Response) GetMessage() string {
  139. if m != nil {
  140. return m.Message
  141. }
  142. return ""
  143. }
  144. func (m *Response) GetResults() []*QueryResult {
  145. if m != nil {
  146. return m.Results
  147. }
  148. return nil
  149. }
  150. type QueryResult struct {
  151. Error string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
  152. ErrorString string `protobuf:"bytes,2,opt,name=errorString" json:"errorString,omitempty"`
  153. RefId string `protobuf:"bytes,3,opt,name=refId" json:"refId,omitempty"`
  154. MetaJson string `protobuf:"bytes,4,opt,name=metaJson" json:"metaJson,omitempty"`
  155. Series []*TimeSeries `protobuf:"bytes,5,rep,name=series" json:"series,omitempty"`
  156. }
  157. func (m *QueryResult) Reset() { *m = QueryResult{} }
  158. func (m *QueryResult) String() string { return proto1.CompactTextString(m) }
  159. func (*QueryResult) ProtoMessage() {}
  160. func (*QueryResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
  161. func (m *QueryResult) GetError() string {
  162. if m != nil {
  163. return m.Error
  164. }
  165. return ""
  166. }
  167. func (m *QueryResult) GetErrorString() string {
  168. if m != nil {
  169. return m.ErrorString
  170. }
  171. return ""
  172. }
  173. func (m *QueryResult) GetRefId() string {
  174. if m != nil {
  175. return m.RefId
  176. }
  177. return ""
  178. }
  179. func (m *QueryResult) GetMetaJson() string {
  180. if m != nil {
  181. return m.MetaJson
  182. }
  183. return ""
  184. }
  185. func (m *QueryResult) GetSeries() []*TimeSeries {
  186. if m != nil {
  187. return m.Series
  188. }
  189. return nil
  190. }
  191. type DatasourceInfo struct {
  192. Id int64 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"`
  193. OrgId int64 `protobuf:"varint,2,opt,name=orgId" json:"orgId,omitempty"`
  194. Name string `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"`
  195. Type string `protobuf:"bytes,4,opt,name=type" json:"type,omitempty"`
  196. Access string `protobuf:"bytes,5,opt,name=access" json:"access,omitempty"`
  197. Url string `protobuf:"bytes,6,opt,name=url" json:"url,omitempty"`
  198. BasicAuth bool `protobuf:"varint,7,opt,name=basicAuth" json:"basicAuth,omitempty"`
  199. BasicAuthUser string `protobuf:"bytes,8,opt,name=basicAuthUser" json:"basicAuthUser,omitempty"`
  200. BasicAuthPassword string `protobuf:"bytes,9,opt,name=basicAuthPassword" json:"basicAuthPassword,omitempty"`
  201. JsonData string `protobuf:"bytes,10,opt,name=jsonData" json:"jsonData,omitempty"`
  202. SecureJsonData string `protobuf:"bytes,11,opt,name=secureJsonData" json:"secureJsonData,omitempty"`
  203. }
  204. func (m *DatasourceInfo) Reset() { *m = DatasourceInfo{} }
  205. func (m *DatasourceInfo) String() string { return proto1.CompactTextString(m) }
  206. func (*DatasourceInfo) ProtoMessage() {}
  207. func (*DatasourceInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
  208. func (m *DatasourceInfo) GetId() int64 {
  209. if m != nil {
  210. return m.Id
  211. }
  212. return 0
  213. }
  214. func (m *DatasourceInfo) GetOrgId() int64 {
  215. if m != nil {
  216. return m.OrgId
  217. }
  218. return 0
  219. }
  220. func (m *DatasourceInfo) GetName() string {
  221. if m != nil {
  222. return m.Name
  223. }
  224. return ""
  225. }
  226. func (m *DatasourceInfo) GetType() string {
  227. if m != nil {
  228. return m.Type
  229. }
  230. return ""
  231. }
  232. func (m *DatasourceInfo) GetAccess() string {
  233. if m != nil {
  234. return m.Access
  235. }
  236. return ""
  237. }
  238. func (m *DatasourceInfo) GetUrl() string {
  239. if m != nil {
  240. return m.Url
  241. }
  242. return ""
  243. }
  244. func (m *DatasourceInfo) GetBasicAuth() bool {
  245. if m != nil {
  246. return m.BasicAuth
  247. }
  248. return false
  249. }
  250. func (m *DatasourceInfo) GetBasicAuthUser() string {
  251. if m != nil {
  252. return m.BasicAuthUser
  253. }
  254. return ""
  255. }
  256. func (m *DatasourceInfo) GetBasicAuthPassword() string {
  257. if m != nil {
  258. return m.BasicAuthPassword
  259. }
  260. return ""
  261. }
  262. func (m *DatasourceInfo) GetJsonData() string {
  263. if m != nil {
  264. return m.JsonData
  265. }
  266. return ""
  267. }
  268. func (m *DatasourceInfo) GetSecureJsonData() string {
  269. if m != nil {
  270. return m.SecureJsonData
  271. }
  272. return ""
  273. }
  274. type TimeSeries struct {
  275. Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  276. Tags map[string]string `protobuf:"bytes,2,rep,name=tags" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
  277. Points []*Point `protobuf:"bytes,3,rep,name=points" json:"points,omitempty"`
  278. }
  279. func (m *TimeSeries) Reset() { *m = TimeSeries{} }
  280. func (m *TimeSeries) String() string { return proto1.CompactTextString(m) }
  281. func (*TimeSeries) ProtoMessage() {}
  282. func (*TimeSeries) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
  283. func (m *TimeSeries) GetName() string {
  284. if m != nil {
  285. return m.Name
  286. }
  287. return ""
  288. }
  289. func (m *TimeSeries) GetTags() map[string]string {
  290. if m != nil {
  291. return m.Tags
  292. }
  293. return nil
  294. }
  295. func (m *TimeSeries) GetPoints() []*Point {
  296. if m != nil {
  297. return m.Points
  298. }
  299. return nil
  300. }
  301. type Point struct {
  302. Timestamp *google_protobuf.Timestamp `protobuf:"bytes,1,opt,name=timestamp" json:"timestamp,omitempty"`
  303. Value float64 `protobuf:"fixed64,2,opt,name=value" json:"value,omitempty"`
  304. }
  305. func (m *Point) Reset() { *m = Point{} }
  306. func (m *Point) String() string { return proto1.CompactTextString(m) }
  307. func (*Point) ProtoMessage() {}
  308. func (*Point) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
  309. func (m *Point) GetTimestamp() *google_protobuf.Timestamp {
  310. if m != nil {
  311. return m.Timestamp
  312. }
  313. return nil
  314. }
  315. func (m *Point) GetValue() float64 {
  316. if m != nil {
  317. return m.Value
  318. }
  319. return 0
  320. }
  321. func init() {
  322. proto1.RegisterType((*TsdbQuery)(nil), "plugins.TsdbQuery")
  323. proto1.RegisterType((*Query)(nil), "plugins.Query")
  324. proto1.RegisterType((*Timerange)(nil), "plugins.Timerange")
  325. proto1.RegisterType((*Response)(nil), "plugins.Response")
  326. proto1.RegisterType((*QueryResult)(nil), "plugins.QueryResult")
  327. proto1.RegisterType((*DatasourceInfo)(nil), "plugins.DatasourceInfo")
  328. proto1.RegisterType((*TimeSeries)(nil), "plugins.TimeSeries")
  329. proto1.RegisterType((*Point)(nil), "plugins.Point")
  330. }
  331. // Reference imports to suppress errors if they are not otherwise used.
  332. var _ context.Context
  333. var _ grpc.ClientConn
  334. // This is a compile-time assertion to ensure that this generated file
  335. // is compatible with the grpc package it is being compiled against.
  336. const _ = grpc.SupportPackageIsVersion4
  337. // Client API for TsdbPlugin service
  338. type TsdbPluginClient interface {
  339. Query(ctx context.Context, in *TsdbQuery, opts ...grpc.CallOption) (*Response, error)
  340. }
  341. type tsdbPluginClient struct {
  342. cc *grpc.ClientConn
  343. }
  344. func NewTsdbPluginClient(cc *grpc.ClientConn) TsdbPluginClient {
  345. return &tsdbPluginClient{cc}
  346. }
  347. func (c *tsdbPluginClient) Query(ctx context.Context, in *TsdbQuery, opts ...grpc.CallOption) (*Response, error) {
  348. out := new(Response)
  349. err := grpc.Invoke(ctx, "/plugins.TsdbPlugin/Query", in, out, c.cc, opts...)
  350. if err != nil {
  351. return nil, err
  352. }
  353. return out, nil
  354. }
  355. // Server API for TsdbPlugin service
  356. type TsdbPluginServer interface {
  357. Query(context.Context, *TsdbQuery) (*Response, error)
  358. }
  359. func RegisterTsdbPluginServer(s *grpc.Server, srv TsdbPluginServer) {
  360. s.RegisterService(&_TsdbPlugin_serviceDesc, srv)
  361. }
  362. func _TsdbPlugin_Query_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  363. in := new(TsdbQuery)
  364. if err := dec(in); err != nil {
  365. return nil, err
  366. }
  367. if interceptor == nil {
  368. return srv.(TsdbPluginServer).Query(ctx, in)
  369. }
  370. info := &grpc.UnaryServerInfo{
  371. Server: srv,
  372. FullMethod: "/plugins.TsdbPlugin/Query",
  373. }
  374. handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  375. return srv.(TsdbPluginServer).Query(ctx, req.(*TsdbQuery))
  376. }
  377. return interceptor(ctx, in, info, handler)
  378. }
  379. var _TsdbPlugin_serviceDesc = grpc.ServiceDesc{
  380. ServiceName: "plugins.TsdbPlugin",
  381. HandlerType: (*TsdbPluginServer)(nil),
  382. Methods: []grpc.MethodDesc{
  383. {
  384. MethodName: "Query",
  385. Handler: _TsdbPlugin_Query_Handler,
  386. },
  387. },
  388. Streams: []grpc.StreamDesc{},
  389. Metadata: "tsdb_plugin.proto",
  390. }
  391. func init() { proto1.RegisterFile("tsdb_plugin.proto", fileDescriptor0) }
  392. var fileDescriptor0 = []byte{
  393. // 681 bytes of a gzipped FileDescriptorProto
  394. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x54, 0xdf, 0x6b, 0xd4, 0x4a,
  395. 0x14, 0x26, 0xc9, 0xfe, 0xca, 0x59, 0xee, 0x72, 0x3b, 0xb7, 0xdc, 0x1b, 0x96, 0xab, 0x2e, 0x41,
  396. 0xca, 0x82, 0x25, 0xd5, 0xf5, 0xa1, 0x45, 0x7c, 0x51, 0xf4, 0xa1, 0x85, 0x42, 0x9d, 0xae, 0x08,
  397. 0x82, 0xc8, 0xec, 0x66, 0x36, 0x46, 0x93, 0xcc, 0x3a, 0x33, 0x69, 0xdd, 0xff, 0xc6, 0x07, 0xff,
  398. 0x04, 0x9f, 0x7c, 0xf0, 0x6f, 0x93, 0x39, 0x99, 0x64, 0xb3, 0x55, 0xc4, 0xa7, 0xcc, 0x39, 0xe7,
  399. 0x9b, 0xc9, 0x37, 0xdf, 0x77, 0xe6, 0xc0, 0x9e, 0x56, 0xf1, 0xe2, 0xed, 0x3a, 0x2b, 0x93, 0xb4,
  400. 0x88, 0xd6, 0x52, 0x68, 0x41, 0xfa, 0x55, 0xa4, 0xc6, 0x77, 0x12, 0x21, 0x92, 0x8c, 0x1f, 0x61,
  401. 0x7a, 0x51, 0xae, 0x8e, 0x74, 0x9a, 0x73, 0xa5, 0x59, 0xbe, 0xae, 0x90, 0xe1, 0x67, 0x07, 0xfc,
  402. 0xb9, 0x8a, 0x17, 0x2f, 0x4a, 0x2e, 0x37, 0xe4, 0x3e, 0xf8, 0x06, 0x20, 0x59, 0x91, 0xf0, 0xc0,
  403. 0x99, 0x38, 0xd3, 0xe1, 0x8c, 0x44, 0xf6, 0xac, 0x68, 0x5e, 0x57, 0xe8, 0x16, 0x44, 0x8e, 0x01,
  404. 0x62, 0xa6, 0x99, 0x12, 0xa5, 0x5c, 0xf2, 0xc0, 0xc5, 0x2d, 0xff, 0x35, 0x5b, 0x9e, 0x35, 0xa5,
  405. 0xd3, 0x62, 0x25, 0x68, 0x0b, 0x4a, 0xa6, 0xd0, 0xff, 0x58, 0x72, 0x99, 0x72, 0x15, 0x78, 0x13,
  406. 0x6f, 0x3a, 0x9c, 0x8d, 0x9a, 0x5d, 0xc8, 0x85, 0xd6, 0xe5, 0xf0, 0x9b, 0x03, 0xdd, 0x8a, 0xde,
  407. 0x3e, 0x74, 0x25, 0x5f, 0x9d, 0xc6, 0x48, 0xcd, 0xa7, 0x55, 0x40, 0xfe, 0x07, 0x3f, 0x17, 0x31,
  408. 0xcf, 0xce, 0x94, 0x28, 0x90, 0x81, 0x4f, 0xb7, 0x09, 0x72, 0x17, 0xfe, 0x3a, 0x67, 0x9f, 0x0c,
  409. 0x91, 0x0b, 0x91, 0x16, 0xda, 0xfc, 0xcd, 0x99, 0x7a, 0x74, 0x37, 0x49, 0x6e, 0x03, 0xa4, 0x85,
  410. 0xe6, 0xf2, 0x8a, 0x65, 0xe7, 0x2a, 0xe8, 0x20, 0xa4, 0x95, 0xb9, 0x71, 0xcd, 0xee, 0x1f, 0x5f,
  411. 0x33, 0x7c, 0x03, 0x7e, 0xa3, 0x1b, 0x21, 0xd0, 0x59, 0x49, 0x91, 0x5b, 0xfa, 0xb8, 0x26, 0x23,
  412. 0x70, 0xb5, 0xb0, 0xb4, 0x5d, 0x2d, 0xc8, 0x21, 0x78, 0x85, 0xb8, 0x46, 0x96, 0xc3, 0xd9, 0x38,
  413. 0xaa, 0xfc, 0x8b, 0x6a, 0xff, 0xd0, 0x04, 0xf4, 0x8f, 0x1a, 0x58, 0x38, 0x87, 0x01, 0xe5, 0x6a,
  414. 0x2d, 0x0a, 0xc5, 0x49, 0x00, 0xfd, 0x9c, 0x2b, 0xc5, 0xac, 0x75, 0x3e, 0xad, 0x43, 0x12, 0x41,
  415. 0x5f, 0x72, 0x55, 0x66, 0x5a, 0x05, 0x2e, 0x6a, 0xbd, 0x7f, 0x43, 0x6b, 0x2c, 0xd2, 0x1a, 0x14,
  416. 0x7e, 0x71, 0x60, 0xd8, 0x2a, 0x18, 0xdd, 0xb9, 0x94, 0x42, 0xd6, 0xba, 0x63, 0x40, 0x26, 0x30,
  417. 0xc4, 0xc5, 0xa5, 0x96, 0x69, 0x91, 0xd8, 0x2b, 0xb4, 0x53, 0x5b, 0xbf, 0xbc, 0xb6, 0x5f, 0x63,
  418. 0x18, 0xe4, 0x5c, 0x33, 0xb4, 0xab, 0x83, 0x85, 0x26, 0x26, 0xf7, 0xa0, 0xa7, 0xaa, 0xa6, 0xe8,
  419. 0x22, 0xd1, 0x7f, 0x76, 0xba, 0xef, 0x12, 0x4b, 0xd4, 0x42, 0xc2, 0xef, 0x2e, 0x8c, 0x76, 0xa5,
  420. 0x37, 0x6a, 0xa6, 0x55, 0x7b, 0x78, 0xd4, 0x4d, 0x63, 0xc3, 0x40, 0xc8, 0xe4, 0x34, 0x46, 0x76,
  421. 0x1e, 0xad, 0x02, 0xe3, 0x43, 0xc1, 0x72, 0x6e, 0x69, 0xe1, 0xda, 0xe4, 0xf4, 0x66, 0xcd, 0x2d,
  422. 0x23, 0x5c, 0x93, 0x7f, 0xa1, 0xc7, 0x96, 0x4b, 0xae, 0x14, 0x3a, 0xee, 0x53, 0x1b, 0x91, 0xbf,
  423. 0xc1, 0x2b, 0x65, 0x16, 0xf4, 0x30, 0x69, 0x96, 0xa6, 0x07, 0x17, 0x4c, 0xa5, 0xcb, 0x27, 0xa5,
  424. 0x7e, 0x17, 0xf4, 0x27, 0xce, 0x74, 0x40, 0xb7, 0x09, 0xd3, 0x83, 0x4d, 0xf0, 0x52, 0x71, 0x19,
  425. 0x0c, 0x70, 0xe7, 0x6e, 0x92, 0x1c, 0xc2, 0x5e, 0x93, 0xb8, 0x60, 0x4a, 0x5d, 0x0b, 0x19, 0x07,
  426. 0x3e, 0x22, 0x7f, 0x2e, 0x18, 0x15, 0xdf, 0x2b, 0x51, 0x98, 0xfb, 0x07, 0x50, 0xa9, 0x58, 0xc7,
  427. 0xe4, 0x00, 0x46, 0x8a, 0x2f, 0x4b, 0xc9, 0xcf, 0x6a, 0xc4, 0x10, 0x11, 0x37, 0xb2, 0xe1, 0x57,
  428. 0x07, 0x60, 0xab, 0x6b, 0x23, 0x8b, 0xd3, 0x92, 0xe5, 0x01, 0x74, 0x34, 0x4b, 0xea, 0xbe, 0xb9,
  429. 0xf5, 0x0b, 0x3b, 0xa2, 0x39, 0x4b, 0xd4, 0xf3, 0x42, 0xcb, 0x0d, 0x45, 0x28, 0x39, 0x80, 0xde,
  430. 0xba, 0x7e, 0x6a, 0xbb, 0x0f, 0x1b, 0x1f, 0x1b, 0xb5, 0xd5, 0xf1, 0x31, 0xf8, 0xcd, 0x56, 0x23,
  431. 0xe9, 0x07, 0xbe, 0xb1, 0xbf, 0x36, 0x4b, 0x63, 0xdd, 0x15, 0xcb, 0x4a, 0x6e, 0x1b, 0xab, 0x0a,
  432. 0x1e, 0xb9, 0x27, 0x4e, 0xf8, 0x0a, 0xba, 0x78, 0x12, 0x39, 0xa9, 0xc6, 0x15, 0xbe, 0x07, 0x3b,
  433. 0xae, 0x7e, 0xf7, 0x62, 0xb6, 0xe0, 0xdd, 0xc3, 0x1d, 0x7b, 0xf8, 0xec, 0x31, 0x80, 0x99, 0x85,
  434. 0x17, 0x48, 0x97, 0x44, 0xf5, 0xd8, 0x69, 0x8d, 0xc0, 0x7a, 0x52, 0x8e, 0xf7, 0x9a, 0x5c, 0xfd,
  435. 0xfe, 0x9e, 0xf6, 0x5f, 0x77, 0xab, 0x9f, 0xf6, 0xf0, 0xf3, 0xf0, 0x47, 0x00, 0x00, 0x00, 0xff,
  436. 0xff, 0x3c, 0x7f, 0xa7, 0xd6, 0x99, 0x05, 0x00, 0x00,
  437. }