pb.pb.go 39 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046
  1. // Code generated by protoc-gen-gogo. DO NOT EDIT.
  2. // source: pb.proto
  3. /*
  4. Package pb is a generated protocol buffer package.
  5. It is generated from these files:
  6. pb.proto
  7. It has these top-level messages:
  8. Metadata
  9. BurndownSparseMatrixRow
  10. BurndownSparseMatrix
  11. FilesOwnership
  12. BurndownAnalysisResults
  13. CompressedSparseRowMatrix
  14. Couples
  15. TouchedFiles
  16. CouplesAnalysisResults
  17. UASTChange
  18. UASTChangesSaverResults
  19. ShotnessRecord
  20. ShotnessAnalysisResults
  21. FileHistory
  22. FileHistoryResultMessage
  23. LineStats
  24. DevDay
  25. DayDevs
  26. DevsAnalysisResults
  27. Sentiment
  28. CommentSentimentResults
  29. CommitFile
  30. Commit
  31. CommitsAnalysisResults
  32. Typo
  33. TyposDataset
  34. AnalysisResults
  35. */
  36. package pb
  37. import proto "github.com/gogo/protobuf/proto"
  38. import fmt "fmt"
  39. import math "math"
  40. // Reference imports to suppress errors if they are not otherwise used.
  41. var _ = proto.Marshal
  42. var _ = fmt.Errorf
  43. var _ = math.Inf
  44. // This is a compile-time assertion to ensure that this generated file
  45. // is compatible with the proto package it is being compiled against.
  46. // A compilation error at this line likely means your copy of the
  47. // proto package needs to be updated.
  48. const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
  49. type Metadata struct {
  50. // this format is versioned
  51. Version int32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
  52. // git hash of the revision from which Hercules is built
  53. Hash string `protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"`
  54. // repository's name
  55. Repository string `protobuf:"bytes,3,opt,name=repository,proto3" json:"repository,omitempty"`
  56. // UNIX timestamp of the first analysed commit
  57. BeginUnixTime int64 `protobuf:"varint,4,opt,name=begin_unix_time,json=beginUnixTime,proto3" json:"begin_unix_time,omitempty"`
  58. // UNIX timestamp of the last analysed commit
  59. EndUnixTime int64 `protobuf:"varint,5,opt,name=end_unix_time,json=endUnixTime,proto3" json:"end_unix_time,omitempty"`
  60. // number of processed commits
  61. Commits int32 `protobuf:"varint,6,opt,name=commits,proto3" json:"commits,omitempty"`
  62. // duration of the analysis in milliseconds
  63. RunTime int64 `protobuf:"varint,7,opt,name=run_time,json=runTime,proto3" json:"run_time,omitempty"`
  64. // time taken by each pipeline item in seconds
  65. RunTimePerItem map[string]float64 `protobuf:"bytes,8,rep,name=run_time_per_item,json=runTimePerItem" json:"run_time_per_item,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"`
  66. }
  67. func (m *Metadata) Reset() { *m = Metadata{} }
  68. func (m *Metadata) String() string { return proto.CompactTextString(m) }
  69. func (*Metadata) ProtoMessage() {}
  70. func (*Metadata) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{0} }
  71. func (m *Metadata) GetVersion() int32 {
  72. if m != nil {
  73. return m.Version
  74. }
  75. return 0
  76. }
  77. func (m *Metadata) GetHash() string {
  78. if m != nil {
  79. return m.Hash
  80. }
  81. return ""
  82. }
  83. func (m *Metadata) GetRepository() string {
  84. if m != nil {
  85. return m.Repository
  86. }
  87. return ""
  88. }
  89. func (m *Metadata) GetBeginUnixTime() int64 {
  90. if m != nil {
  91. return m.BeginUnixTime
  92. }
  93. return 0
  94. }
  95. func (m *Metadata) GetEndUnixTime() int64 {
  96. if m != nil {
  97. return m.EndUnixTime
  98. }
  99. return 0
  100. }
  101. func (m *Metadata) GetCommits() int32 {
  102. if m != nil {
  103. return m.Commits
  104. }
  105. return 0
  106. }
  107. func (m *Metadata) GetRunTime() int64 {
  108. if m != nil {
  109. return m.RunTime
  110. }
  111. return 0
  112. }
  113. func (m *Metadata) GetRunTimePerItem() map[string]float64 {
  114. if m != nil {
  115. return m.RunTimePerItem
  116. }
  117. return nil
  118. }
  119. type BurndownSparseMatrixRow struct {
  120. // the first `len(column)` elements are stored,
  121. // the rest `number_of_columns - len(column)` values are zeros
  122. Columns []uint32 `protobuf:"varint,1,rep,packed,name=columns" json:"columns,omitempty"`
  123. }
  124. func (m *BurndownSparseMatrixRow) Reset() { *m = BurndownSparseMatrixRow{} }
  125. func (m *BurndownSparseMatrixRow) String() string { return proto.CompactTextString(m) }
  126. func (*BurndownSparseMatrixRow) ProtoMessage() {}
  127. func (*BurndownSparseMatrixRow) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{1} }
  128. func (m *BurndownSparseMatrixRow) GetColumns() []uint32 {
  129. if m != nil {
  130. return m.Columns
  131. }
  132. return nil
  133. }
  134. type BurndownSparseMatrix struct {
  135. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  136. NumberOfRows int32 `protobuf:"varint,2,opt,name=number_of_rows,json=numberOfRows,proto3" json:"number_of_rows,omitempty"`
  137. NumberOfColumns int32 `protobuf:"varint,3,opt,name=number_of_columns,json=numberOfColumns,proto3" json:"number_of_columns,omitempty"`
  138. // `len(row)` matches `number_of_rows`
  139. Rows []*BurndownSparseMatrixRow `protobuf:"bytes,4,rep,name=rows" json:"rows,omitempty"`
  140. }
  141. func (m *BurndownSparseMatrix) Reset() { *m = BurndownSparseMatrix{} }
  142. func (m *BurndownSparseMatrix) String() string { return proto.CompactTextString(m) }
  143. func (*BurndownSparseMatrix) ProtoMessage() {}
  144. func (*BurndownSparseMatrix) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{2} }
  145. func (m *BurndownSparseMatrix) GetName() string {
  146. if m != nil {
  147. return m.Name
  148. }
  149. return ""
  150. }
  151. func (m *BurndownSparseMatrix) GetNumberOfRows() int32 {
  152. if m != nil {
  153. return m.NumberOfRows
  154. }
  155. return 0
  156. }
  157. func (m *BurndownSparseMatrix) GetNumberOfColumns() int32 {
  158. if m != nil {
  159. return m.NumberOfColumns
  160. }
  161. return 0
  162. }
  163. func (m *BurndownSparseMatrix) GetRows() []*BurndownSparseMatrixRow {
  164. if m != nil {
  165. return m.Rows
  166. }
  167. return nil
  168. }
  169. type FilesOwnership struct {
  170. // The sum always equals to the total number of lines in the file.
  171. Value map[int32]int32 `protobuf:"bytes,1,rep,name=value" json:"value,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
  172. }
  173. func (m *FilesOwnership) Reset() { *m = FilesOwnership{} }
  174. func (m *FilesOwnership) String() string { return proto.CompactTextString(m) }
  175. func (*FilesOwnership) ProtoMessage() {}
  176. func (*FilesOwnership) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{3} }
  177. func (m *FilesOwnership) GetValue() map[int32]int32 {
  178. if m != nil {
  179. return m.Value
  180. }
  181. return nil
  182. }
  183. type BurndownAnalysisResults struct {
  184. // how many days are in each band [burndown_project, burndown_file, burndown_developer]
  185. Granularity int32 `protobuf:"varint,1,opt,name=granularity,proto3" json:"granularity,omitempty"`
  186. // how frequently we measure the state of each band [burndown_project, burndown_file, burndown_developer]
  187. Sampling int32 `protobuf:"varint,2,opt,name=sampling,proto3" json:"sampling,omitempty"`
  188. // always exists
  189. Project *BurndownSparseMatrix `protobuf:"bytes,3,opt,name=project" json:"project,omitempty"`
  190. // this is included if `--burndown-files` was specified
  191. Files []*BurndownSparseMatrix `protobuf:"bytes,4,rep,name=files" json:"files,omitempty"`
  192. // these two are included if `--burndown-people` was specified
  193. People []*BurndownSparseMatrix `protobuf:"bytes,5,rep,name=people" json:"people,omitempty"`
  194. // rows and cols order correspond to `burndown_developer`
  195. PeopleInteraction *CompressedSparseRowMatrix `protobuf:"bytes,6,opt,name=people_interaction,json=peopleInteraction" json:"people_interaction,omitempty"`
  196. // How many lines belong to relevant developers for each file. The order is the same as in `files`.
  197. FilesOwnership []*FilesOwnership `protobuf:"bytes,7,rep,name=files_ownership,json=filesOwnership" json:"files_ownership,omitempty"`
  198. }
  199. func (m *BurndownAnalysisResults) Reset() { *m = BurndownAnalysisResults{} }
  200. func (m *BurndownAnalysisResults) String() string { return proto.CompactTextString(m) }
  201. func (*BurndownAnalysisResults) ProtoMessage() {}
  202. func (*BurndownAnalysisResults) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{4} }
  203. func (m *BurndownAnalysisResults) GetGranularity() int32 {
  204. if m != nil {
  205. return m.Granularity
  206. }
  207. return 0
  208. }
  209. func (m *BurndownAnalysisResults) GetSampling() int32 {
  210. if m != nil {
  211. return m.Sampling
  212. }
  213. return 0
  214. }
  215. func (m *BurndownAnalysisResults) GetProject() *BurndownSparseMatrix {
  216. if m != nil {
  217. return m.Project
  218. }
  219. return nil
  220. }
  221. func (m *BurndownAnalysisResults) GetFiles() []*BurndownSparseMatrix {
  222. if m != nil {
  223. return m.Files
  224. }
  225. return nil
  226. }
  227. func (m *BurndownAnalysisResults) GetPeople() []*BurndownSparseMatrix {
  228. if m != nil {
  229. return m.People
  230. }
  231. return nil
  232. }
  233. func (m *BurndownAnalysisResults) GetPeopleInteraction() *CompressedSparseRowMatrix {
  234. if m != nil {
  235. return m.PeopleInteraction
  236. }
  237. return nil
  238. }
  239. func (m *BurndownAnalysisResults) GetFilesOwnership() []*FilesOwnership {
  240. if m != nil {
  241. return m.FilesOwnership
  242. }
  243. return nil
  244. }
  245. type CompressedSparseRowMatrix struct {
  246. NumberOfRows int32 `protobuf:"varint,1,opt,name=number_of_rows,json=numberOfRows,proto3" json:"number_of_rows,omitempty"`
  247. NumberOfColumns int32 `protobuf:"varint,2,opt,name=number_of_columns,json=numberOfColumns,proto3" json:"number_of_columns,omitempty"`
  248. // https://en.wikipedia.org/wiki/Sparse_matrix#Compressed_sparse_row_.28CSR.2C_CRS_or_Yale_format.29
  249. Data []int64 `protobuf:"varint,3,rep,packed,name=data" json:"data,omitempty"`
  250. Indices []int32 `protobuf:"varint,4,rep,packed,name=indices" json:"indices,omitempty"`
  251. Indptr []int64 `protobuf:"varint,5,rep,packed,name=indptr" json:"indptr,omitempty"`
  252. }
  253. func (m *CompressedSparseRowMatrix) Reset() { *m = CompressedSparseRowMatrix{} }
  254. func (m *CompressedSparseRowMatrix) String() string { return proto.CompactTextString(m) }
  255. func (*CompressedSparseRowMatrix) ProtoMessage() {}
  256. func (*CompressedSparseRowMatrix) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{5} }
  257. func (m *CompressedSparseRowMatrix) GetNumberOfRows() int32 {
  258. if m != nil {
  259. return m.NumberOfRows
  260. }
  261. return 0
  262. }
  263. func (m *CompressedSparseRowMatrix) GetNumberOfColumns() int32 {
  264. if m != nil {
  265. return m.NumberOfColumns
  266. }
  267. return 0
  268. }
  269. func (m *CompressedSparseRowMatrix) GetData() []int64 {
  270. if m != nil {
  271. return m.Data
  272. }
  273. return nil
  274. }
  275. func (m *CompressedSparseRowMatrix) GetIndices() []int32 {
  276. if m != nil {
  277. return m.Indices
  278. }
  279. return nil
  280. }
  281. func (m *CompressedSparseRowMatrix) GetIndptr() []int64 {
  282. if m != nil {
  283. return m.Indptr
  284. }
  285. return nil
  286. }
  287. type Couples struct {
  288. // name of each `matrix`'s row and column
  289. Index []string `protobuf:"bytes,1,rep,name=index" json:"index,omitempty"`
  290. // is always square
  291. Matrix *CompressedSparseRowMatrix `protobuf:"bytes,2,opt,name=matrix" json:"matrix,omitempty"`
  292. }
  293. func (m *Couples) Reset() { *m = Couples{} }
  294. func (m *Couples) String() string { return proto.CompactTextString(m) }
  295. func (*Couples) ProtoMessage() {}
  296. func (*Couples) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{6} }
  297. func (m *Couples) GetIndex() []string {
  298. if m != nil {
  299. return m.Index
  300. }
  301. return nil
  302. }
  303. func (m *Couples) GetMatrix() *CompressedSparseRowMatrix {
  304. if m != nil {
  305. return m.Matrix
  306. }
  307. return nil
  308. }
  309. type TouchedFiles struct {
  310. Files []int32 `protobuf:"varint,1,rep,packed,name=files" json:"files,omitempty"`
  311. }
  312. func (m *TouchedFiles) Reset() { *m = TouchedFiles{} }
  313. func (m *TouchedFiles) String() string { return proto.CompactTextString(m) }
  314. func (*TouchedFiles) ProtoMessage() {}
  315. func (*TouchedFiles) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{7} }
  316. func (m *TouchedFiles) GetFiles() []int32 {
  317. if m != nil {
  318. return m.Files
  319. }
  320. return nil
  321. }
  322. type CouplesAnalysisResults struct {
  323. FileCouples *Couples `protobuf:"bytes,6,opt,name=file_couples,json=fileCouples" json:"file_couples,omitempty"`
  324. PeopleCouples *Couples `protobuf:"bytes,7,opt,name=people_couples,json=peopleCouples" json:"people_couples,omitempty"`
  325. // order corresponds to `people_couples::index`
  326. PeopleFiles []*TouchedFiles `protobuf:"bytes,8,rep,name=people_files,json=peopleFiles" json:"people_files,omitempty"`
  327. // order corresponds to `file_couples::index`
  328. FilesLines []int32 `protobuf:"varint,9,rep,packed,name=files_lines,json=filesLines" json:"files_lines,omitempty"`
  329. }
  330. func (m *CouplesAnalysisResults) Reset() { *m = CouplesAnalysisResults{} }
  331. func (m *CouplesAnalysisResults) String() string { return proto.CompactTextString(m) }
  332. func (*CouplesAnalysisResults) ProtoMessage() {}
  333. func (*CouplesAnalysisResults) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{8} }
  334. func (m *CouplesAnalysisResults) GetFileCouples() *Couples {
  335. if m != nil {
  336. return m.FileCouples
  337. }
  338. return nil
  339. }
  340. func (m *CouplesAnalysisResults) GetPeopleCouples() *Couples {
  341. if m != nil {
  342. return m.PeopleCouples
  343. }
  344. return nil
  345. }
  346. func (m *CouplesAnalysisResults) GetPeopleFiles() []*TouchedFiles {
  347. if m != nil {
  348. return m.PeopleFiles
  349. }
  350. return nil
  351. }
  352. func (m *CouplesAnalysisResults) GetFilesLines() []int32 {
  353. if m != nil {
  354. return m.FilesLines
  355. }
  356. return nil
  357. }
  358. type UASTChange struct {
  359. FileName string `protobuf:"bytes,1,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
  360. SrcBefore string `protobuf:"bytes,2,opt,name=src_before,json=srcBefore,proto3" json:"src_before,omitempty"`
  361. SrcAfter string `protobuf:"bytes,3,opt,name=src_after,json=srcAfter,proto3" json:"src_after,omitempty"`
  362. UastBefore string `protobuf:"bytes,4,opt,name=uast_before,json=uastBefore,proto3" json:"uast_before,omitempty"`
  363. UastAfter string `protobuf:"bytes,5,opt,name=uast_after,json=uastAfter,proto3" json:"uast_after,omitempty"`
  364. }
  365. func (m *UASTChange) Reset() { *m = UASTChange{} }
  366. func (m *UASTChange) String() string { return proto.CompactTextString(m) }
  367. func (*UASTChange) ProtoMessage() {}
  368. func (*UASTChange) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{9} }
  369. func (m *UASTChange) GetFileName() string {
  370. if m != nil {
  371. return m.FileName
  372. }
  373. return ""
  374. }
  375. func (m *UASTChange) GetSrcBefore() string {
  376. if m != nil {
  377. return m.SrcBefore
  378. }
  379. return ""
  380. }
  381. func (m *UASTChange) GetSrcAfter() string {
  382. if m != nil {
  383. return m.SrcAfter
  384. }
  385. return ""
  386. }
  387. func (m *UASTChange) GetUastBefore() string {
  388. if m != nil {
  389. return m.UastBefore
  390. }
  391. return ""
  392. }
  393. func (m *UASTChange) GetUastAfter() string {
  394. if m != nil {
  395. return m.UastAfter
  396. }
  397. return ""
  398. }
  399. type UASTChangesSaverResults struct {
  400. Changes []*UASTChange `protobuf:"bytes,1,rep,name=changes" json:"changes,omitempty"`
  401. }
  402. func (m *UASTChangesSaverResults) Reset() { *m = UASTChangesSaverResults{} }
  403. func (m *UASTChangesSaverResults) String() string { return proto.CompactTextString(m) }
  404. func (*UASTChangesSaverResults) ProtoMessage() {}
  405. func (*UASTChangesSaverResults) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{10} }
  406. func (m *UASTChangesSaverResults) GetChanges() []*UASTChange {
  407. if m != nil {
  408. return m.Changes
  409. }
  410. return nil
  411. }
  412. type ShotnessRecord struct {
  413. Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
  414. Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
  415. File string `protobuf:"bytes,3,opt,name=file,proto3" json:"file,omitempty"`
  416. Counters map[int32]int32 `protobuf:"bytes,4,rep,name=counters" json:"counters,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
  417. }
  418. func (m *ShotnessRecord) Reset() { *m = ShotnessRecord{} }
  419. func (m *ShotnessRecord) String() string { return proto.CompactTextString(m) }
  420. func (*ShotnessRecord) ProtoMessage() {}
  421. func (*ShotnessRecord) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{11} }
  422. func (m *ShotnessRecord) GetType() string {
  423. if m != nil {
  424. return m.Type
  425. }
  426. return ""
  427. }
  428. func (m *ShotnessRecord) GetName() string {
  429. if m != nil {
  430. return m.Name
  431. }
  432. return ""
  433. }
  434. func (m *ShotnessRecord) GetFile() string {
  435. if m != nil {
  436. return m.File
  437. }
  438. return ""
  439. }
  440. func (m *ShotnessRecord) GetCounters() map[int32]int32 {
  441. if m != nil {
  442. return m.Counters
  443. }
  444. return nil
  445. }
  446. type ShotnessAnalysisResults struct {
  447. Records []*ShotnessRecord `protobuf:"bytes,1,rep,name=records" json:"records,omitempty"`
  448. }
  449. func (m *ShotnessAnalysisResults) Reset() { *m = ShotnessAnalysisResults{} }
  450. func (m *ShotnessAnalysisResults) String() string { return proto.CompactTextString(m) }
  451. func (*ShotnessAnalysisResults) ProtoMessage() {}
  452. func (*ShotnessAnalysisResults) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{12} }
  453. func (m *ShotnessAnalysisResults) GetRecords() []*ShotnessRecord {
  454. if m != nil {
  455. return m.Records
  456. }
  457. return nil
  458. }
  459. type FileHistory struct {
  460. Commits []string `protobuf:"bytes,1,rep,name=commits" json:"commits,omitempty"`
  461. ChangesByDeveloper map[int32]*LineStats `protobuf:"bytes,2,rep,name=changes_by_developer,json=changesByDeveloper" json:"changes_by_developer,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  462. }
  463. func (m *FileHistory) Reset() { *m = FileHistory{} }
  464. func (m *FileHistory) String() string { return proto.CompactTextString(m) }
  465. func (*FileHistory) ProtoMessage() {}
  466. func (*FileHistory) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{13} }
  467. func (m *FileHistory) GetCommits() []string {
  468. if m != nil {
  469. return m.Commits
  470. }
  471. return nil
  472. }
  473. func (m *FileHistory) GetChangesByDeveloper() map[int32]*LineStats {
  474. if m != nil {
  475. return m.ChangesByDeveloper
  476. }
  477. return nil
  478. }
  479. type FileHistoryResultMessage struct {
  480. Files map[string]*FileHistory `protobuf:"bytes,1,rep,name=files" json:"files,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  481. }
  482. func (m *FileHistoryResultMessage) Reset() { *m = FileHistoryResultMessage{} }
  483. func (m *FileHistoryResultMessage) String() string { return proto.CompactTextString(m) }
  484. func (*FileHistoryResultMessage) ProtoMessage() {}
  485. func (*FileHistoryResultMessage) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{14} }
  486. func (m *FileHistoryResultMessage) GetFiles() map[string]*FileHistory {
  487. if m != nil {
  488. return m.Files
  489. }
  490. return nil
  491. }
  492. type LineStats struct {
  493. Added int32 `protobuf:"varint,1,opt,name=added,proto3" json:"added,omitempty"`
  494. Removed int32 `protobuf:"varint,2,opt,name=removed,proto3" json:"removed,omitempty"`
  495. Changed int32 `protobuf:"varint,3,opt,name=changed,proto3" json:"changed,omitempty"`
  496. }
  497. func (m *LineStats) Reset() { *m = LineStats{} }
  498. func (m *LineStats) String() string { return proto.CompactTextString(m) }
  499. func (*LineStats) ProtoMessage() {}
  500. func (*LineStats) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{15} }
  501. func (m *LineStats) GetAdded() int32 {
  502. if m != nil {
  503. return m.Added
  504. }
  505. return 0
  506. }
  507. func (m *LineStats) GetRemoved() int32 {
  508. if m != nil {
  509. return m.Removed
  510. }
  511. return 0
  512. }
  513. func (m *LineStats) GetChanged() int32 {
  514. if m != nil {
  515. return m.Changed
  516. }
  517. return 0
  518. }
  519. type DevDay struct {
  520. Commits int32 `protobuf:"varint,1,opt,name=commits,proto3" json:"commits,omitempty"`
  521. Stats *LineStats `protobuf:"bytes,2,opt,name=stats" json:"stats,omitempty"`
  522. Languages map[string]*LineStats `protobuf:"bytes,3,rep,name=languages" json:"languages,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  523. }
  524. func (m *DevDay) Reset() { *m = DevDay{} }
  525. func (m *DevDay) String() string { return proto.CompactTextString(m) }
  526. func (*DevDay) ProtoMessage() {}
  527. func (*DevDay) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{16} }
  528. func (m *DevDay) GetCommits() int32 {
  529. if m != nil {
  530. return m.Commits
  531. }
  532. return 0
  533. }
  534. func (m *DevDay) GetStats() *LineStats {
  535. if m != nil {
  536. return m.Stats
  537. }
  538. return nil
  539. }
  540. func (m *DevDay) GetLanguages() map[string]*LineStats {
  541. if m != nil {
  542. return m.Languages
  543. }
  544. return nil
  545. }
  546. type DayDevs struct {
  547. Devs map[int32]*DevDay `protobuf:"bytes,1,rep,name=devs" json:"devs,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  548. }
  549. func (m *DayDevs) Reset() { *m = DayDevs{} }
  550. func (m *DayDevs) String() string { return proto.CompactTextString(m) }
  551. func (*DayDevs) ProtoMessage() {}
  552. func (*DayDevs) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{17} }
  553. func (m *DayDevs) GetDevs() map[int32]*DevDay {
  554. if m != nil {
  555. return m.Devs
  556. }
  557. return nil
  558. }
  559. type DevsAnalysisResults struct {
  560. Days map[int32]*DayDevs `protobuf:"bytes,1,rep,name=days" json:"days,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  561. DevIndex []string `protobuf:"bytes,2,rep,name=dev_index,json=devIndex" json:"dev_index,omitempty"`
  562. }
  563. func (m *DevsAnalysisResults) Reset() { *m = DevsAnalysisResults{} }
  564. func (m *DevsAnalysisResults) String() string { return proto.CompactTextString(m) }
  565. func (*DevsAnalysisResults) ProtoMessage() {}
  566. func (*DevsAnalysisResults) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{18} }
  567. func (m *DevsAnalysisResults) GetDays() map[int32]*DayDevs {
  568. if m != nil {
  569. return m.Days
  570. }
  571. return nil
  572. }
  573. func (m *DevsAnalysisResults) GetDevIndex() []string {
  574. if m != nil {
  575. return m.DevIndex
  576. }
  577. return nil
  578. }
  579. type Sentiment struct {
  580. Value float32 `protobuf:"fixed32,1,opt,name=value,proto3" json:"value,omitempty"`
  581. Comments []string `protobuf:"bytes,2,rep,name=comments" json:"comments,omitempty"`
  582. Commits []string `protobuf:"bytes,3,rep,name=commits" json:"commits,omitempty"`
  583. }
  584. func (m *Sentiment) Reset() { *m = Sentiment{} }
  585. func (m *Sentiment) String() string { return proto.CompactTextString(m) }
  586. func (*Sentiment) ProtoMessage() {}
  587. func (*Sentiment) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{19} }
  588. func (m *Sentiment) GetValue() float32 {
  589. if m != nil {
  590. return m.Value
  591. }
  592. return 0
  593. }
  594. func (m *Sentiment) GetComments() []string {
  595. if m != nil {
  596. return m.Comments
  597. }
  598. return nil
  599. }
  600. func (m *Sentiment) GetCommits() []string {
  601. if m != nil {
  602. return m.Commits
  603. }
  604. return nil
  605. }
  606. type CommentSentimentResults struct {
  607. SentimentByDay map[int32]*Sentiment `protobuf:"bytes,1,rep,name=sentiment_by_day,json=sentimentByDay" json:"sentiment_by_day,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  608. }
  609. func (m *CommentSentimentResults) Reset() { *m = CommentSentimentResults{} }
  610. func (m *CommentSentimentResults) String() string { return proto.CompactTextString(m) }
  611. func (*CommentSentimentResults) ProtoMessage() {}
  612. func (*CommentSentimentResults) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{20} }
  613. func (m *CommentSentimentResults) GetSentimentByDay() map[int32]*Sentiment {
  614. if m != nil {
  615. return m.SentimentByDay
  616. }
  617. return nil
  618. }
  619. type CommitFile struct {
  620. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  621. Language string `protobuf:"bytes,3,opt,name=language,proto3" json:"language,omitempty"`
  622. Stats *LineStats `protobuf:"bytes,4,opt,name=stats" json:"stats,omitempty"`
  623. }
  624. func (m *CommitFile) Reset() { *m = CommitFile{} }
  625. func (m *CommitFile) String() string { return proto.CompactTextString(m) }
  626. func (*CommitFile) ProtoMessage() {}
  627. func (*CommitFile) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{21} }
  628. func (m *CommitFile) GetName() string {
  629. if m != nil {
  630. return m.Name
  631. }
  632. return ""
  633. }
  634. func (m *CommitFile) GetLanguage() string {
  635. if m != nil {
  636. return m.Language
  637. }
  638. return ""
  639. }
  640. func (m *CommitFile) GetStats() *LineStats {
  641. if m != nil {
  642. return m.Stats
  643. }
  644. return nil
  645. }
  646. type Commit struct {
  647. Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
  648. WhenUnixTime int64 `protobuf:"varint,2,opt,name=when_unix_time,json=whenUnixTime,proto3" json:"when_unix_time,omitempty"`
  649. Author int32 `protobuf:"varint,3,opt,name=author,proto3" json:"author,omitempty"`
  650. Files []*CommitFile `protobuf:"bytes,4,rep,name=files" json:"files,omitempty"`
  651. }
  652. func (m *Commit) Reset() { *m = Commit{} }
  653. func (m *Commit) String() string { return proto.CompactTextString(m) }
  654. func (*Commit) ProtoMessage() {}
  655. func (*Commit) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{22} }
  656. func (m *Commit) GetHash() string {
  657. if m != nil {
  658. return m.Hash
  659. }
  660. return ""
  661. }
  662. func (m *Commit) GetWhenUnixTime() int64 {
  663. if m != nil {
  664. return m.WhenUnixTime
  665. }
  666. return 0
  667. }
  668. func (m *Commit) GetAuthor() int32 {
  669. if m != nil {
  670. return m.Author
  671. }
  672. return 0
  673. }
  674. func (m *Commit) GetFiles() []*CommitFile {
  675. if m != nil {
  676. return m.Files
  677. }
  678. return nil
  679. }
  680. type CommitsAnalysisResults struct {
  681. Commits []*Commit `protobuf:"bytes,1,rep,name=commits" json:"commits,omitempty"`
  682. AuthorIndex []string `protobuf:"bytes,2,rep,name=author_index,json=authorIndex" json:"author_index,omitempty"`
  683. }
  684. func (m *CommitsAnalysisResults) Reset() { *m = CommitsAnalysisResults{} }
  685. func (m *CommitsAnalysisResults) String() string { return proto.CompactTextString(m) }
  686. func (*CommitsAnalysisResults) ProtoMessage() {}
  687. func (*CommitsAnalysisResults) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{23} }
  688. func (m *CommitsAnalysisResults) GetCommits() []*Commit {
  689. if m != nil {
  690. return m.Commits
  691. }
  692. return nil
  693. }
  694. func (m *CommitsAnalysisResults) GetAuthorIndex() []string {
  695. if m != nil {
  696. return m.AuthorIndex
  697. }
  698. return nil
  699. }
  700. type Typo struct {
  701. Wrong string `protobuf:"bytes,1,opt,name=wrong,proto3" json:"wrong,omitempty"`
  702. Correct string `protobuf:"bytes,2,opt,name=correct,proto3" json:"correct,omitempty"`
  703. Commit string `protobuf:"bytes,3,opt,name=commit,proto3" json:"commit,omitempty"`
  704. File string `protobuf:"bytes,4,opt,name=file,proto3" json:"file,omitempty"`
  705. Line int32 `protobuf:"varint,5,opt,name=line,proto3" json:"line,omitempty"`
  706. }
  707. func (m *Typo) Reset() { *m = Typo{} }
  708. func (m *Typo) String() string { return proto.CompactTextString(m) }
  709. func (*Typo) ProtoMessage() {}
  710. func (*Typo) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{24} }
  711. func (m *Typo) GetWrong() string {
  712. if m != nil {
  713. return m.Wrong
  714. }
  715. return ""
  716. }
  717. func (m *Typo) GetCorrect() string {
  718. if m != nil {
  719. return m.Correct
  720. }
  721. return ""
  722. }
  723. func (m *Typo) GetCommit() string {
  724. if m != nil {
  725. return m.Commit
  726. }
  727. return ""
  728. }
  729. func (m *Typo) GetFile() string {
  730. if m != nil {
  731. return m.File
  732. }
  733. return ""
  734. }
  735. func (m *Typo) GetLine() int32 {
  736. if m != nil {
  737. return m.Line
  738. }
  739. return 0
  740. }
  741. type TyposDataset struct {
  742. Typos []*Typo `protobuf:"bytes,1,rep,name=typos" json:"typos,omitempty"`
  743. }
  744. func (m *TyposDataset) Reset() { *m = TyposDataset{} }
  745. func (m *TyposDataset) String() string { return proto.CompactTextString(m) }
  746. func (*TyposDataset) ProtoMessage() {}
  747. func (*TyposDataset) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{25} }
  748. func (m *TyposDataset) GetTypos() []*Typo {
  749. if m != nil {
  750. return m.Typos
  751. }
  752. return nil
  753. }
  754. type AnalysisResults struct {
  755. Header *Metadata `protobuf:"bytes,1,opt,name=header" json:"header,omitempty"`
  756. // the mapped values are dynamic messages which require the second parsing pass.
  757. Contents map[string][]byte `protobuf:"bytes,2,rep,name=contents" json:"contents,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  758. }
  759. func (m *AnalysisResults) Reset() { *m = AnalysisResults{} }
  760. func (m *AnalysisResults) String() string { return proto.CompactTextString(m) }
  761. func (*AnalysisResults) ProtoMessage() {}
  762. func (*AnalysisResults) Descriptor() ([]byte, []int) { return fileDescriptorPb, []int{26} }
  763. func (m *AnalysisResults) GetHeader() *Metadata {
  764. if m != nil {
  765. return m.Header
  766. }
  767. return nil
  768. }
  769. func (m *AnalysisResults) GetContents() map[string][]byte {
  770. if m != nil {
  771. return m.Contents
  772. }
  773. return nil
  774. }
  775. func init() {
  776. proto.RegisterType((*Metadata)(nil), "Metadata")
  777. proto.RegisterType((*BurndownSparseMatrixRow)(nil), "BurndownSparseMatrixRow")
  778. proto.RegisterType((*BurndownSparseMatrix)(nil), "BurndownSparseMatrix")
  779. proto.RegisterType((*FilesOwnership)(nil), "FilesOwnership")
  780. proto.RegisterType((*BurndownAnalysisResults)(nil), "BurndownAnalysisResults")
  781. proto.RegisterType((*CompressedSparseRowMatrix)(nil), "CompressedSparseRowMatrix")
  782. proto.RegisterType((*Couples)(nil), "Couples")
  783. proto.RegisterType((*TouchedFiles)(nil), "TouchedFiles")
  784. proto.RegisterType((*CouplesAnalysisResults)(nil), "CouplesAnalysisResults")
  785. proto.RegisterType((*UASTChange)(nil), "UASTChange")
  786. proto.RegisterType((*UASTChangesSaverResults)(nil), "UASTChangesSaverResults")
  787. proto.RegisterType((*ShotnessRecord)(nil), "ShotnessRecord")
  788. proto.RegisterType((*ShotnessAnalysisResults)(nil), "ShotnessAnalysisResults")
  789. proto.RegisterType((*FileHistory)(nil), "FileHistory")
  790. proto.RegisterType((*FileHistoryResultMessage)(nil), "FileHistoryResultMessage")
  791. proto.RegisterType((*LineStats)(nil), "LineStats")
  792. proto.RegisterType((*DevDay)(nil), "DevDay")
  793. proto.RegisterType((*DayDevs)(nil), "DayDevs")
  794. proto.RegisterType((*DevsAnalysisResults)(nil), "DevsAnalysisResults")
  795. proto.RegisterType((*Sentiment)(nil), "Sentiment")
  796. proto.RegisterType((*CommentSentimentResults)(nil), "CommentSentimentResults")
  797. proto.RegisterType((*CommitFile)(nil), "CommitFile")
  798. proto.RegisterType((*Commit)(nil), "Commit")
  799. proto.RegisterType((*CommitsAnalysisResults)(nil), "CommitsAnalysisResults")
  800. proto.RegisterType((*Typo)(nil), "Typo")
  801. proto.RegisterType((*TyposDataset)(nil), "TyposDataset")
  802. proto.RegisterType((*AnalysisResults)(nil), "AnalysisResults")
  803. }
  804. func init() { proto.RegisterFile("pb.proto", fileDescriptorPb) }
  805. var fileDescriptorPb = []byte{
  806. // 1568 bytes of a gzipped FileDescriptorProto
  807. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x57, 0xcd, 0x6e, 0xdb, 0xc6,
  808. 0x13, 0x07, 0x25, 0x51, 0x1f, 0x23, 0x59, 0x4e, 0x36, 0xfe, 0xdb, 0x8c, 0x02, 0xe7, 0xaf, 0x10,
  809. 0x6e, 0xe0, 0x36, 0x29, 0x13, 0x38, 0x3d, 0xa4, 0xe9, 0x25, 0xfe, 0x68, 0x10, 0x03, 0x71, 0xd3,
  810. 0xd2, 0x4e, 0x7a, 0x8b, 0xb0, 0x16, 0xd7, 0x12, 0x5b, 0x69, 0x49, 0xec, 0x92, 0x92, 0x05, 0xb4,
  811. 0xaf, 0xd2, 0x5b, 0x0f, 0x2d, 0xd0, 0x53, 0x5f, 0xa0, 0x87, 0x5e, 0x7a, 0xed, 0x43, 0x14, 0xe8,
  812. 0x5b, 0x14, 0xfb, 0x45, 0x91, 0x0a, 0x9d, 0xa6, 0x37, 0xce, 0xcc, 0x6f, 0x77, 0x67, 0x7e, 0x33,
  813. 0xb3, 0xb3, 0x84, 0x66, 0x7c, 0xee, 0xc5, 0x2c, 0x4a, 0x22, 0xf7, 0xaf, 0x0a, 0x34, 0x4f, 0x48,
  814. 0x82, 0x03, 0x9c, 0x60, 0xe4, 0x40, 0x63, 0x46, 0x18, 0x0f, 0x23, 0xea, 0x58, 0x7d, 0x6b, 0xd7,
  815. 0xf6, 0x8d, 0x88, 0x10, 0xd4, 0xc6, 0x98, 0x8f, 0x9d, 0x4a, 0xdf, 0xda, 0x6d, 0xf9, 0xf2, 0x1b,
  816. 0xdd, 0x06, 0x60, 0x24, 0x8e, 0x78, 0x98, 0x44, 0x6c, 0xe1, 0x54, 0xa5, 0x25, 0xa7, 0x41, 0x77,
  817. 0x61, 0xfd, 0x9c, 0x8c, 0x42, 0x3a, 0x48, 0x69, 0x78, 0x39, 0x48, 0xc2, 0x29, 0x71, 0x6a, 0x7d,
  818. 0x6b, 0xb7, 0xea, 0xaf, 0x49, 0xf5, 0x2b, 0x1a, 0x5e, 0x9e, 0x85, 0x53, 0x82, 0x5c, 0x58, 0x23,
  819. 0x34, 0xc8, 0xa1, 0x6c, 0x89, 0x6a, 0x13, 0x1a, 0x64, 0x18, 0x07, 0x1a, 0xc3, 0x68, 0x3a, 0x0d,
  820. 0x13, 0xee, 0xd4, 0x95, 0x67, 0x5a, 0x44, 0x37, 0xa1, 0xc9, 0x52, 0xaa, 0x16, 0x36, 0xe4, 0xc2,
  821. 0x06, 0x4b, 0xa9, 0x5c, 0xf4, 0x1c, 0xae, 0x1b, 0xd3, 0x20, 0x26, 0x6c, 0x10, 0x26, 0x64, 0xea,
  822. 0x34, 0xfb, 0xd5, 0xdd, 0xf6, 0xde, 0xb6, 0x67, 0x82, 0xf6, 0x7c, 0x85, 0xfe, 0x92, 0xb0, 0xe3,
  823. 0x84, 0x4c, 0x3f, 0xa7, 0x09, 0x5b, 0xf8, 0x5d, 0x56, 0x50, 0xf6, 0xf6, 0xe1, 0x46, 0x09, 0x0c,
  824. 0x5d, 0x83, 0xea, 0xb7, 0x64, 0x21, 0xb9, 0x6a, 0xf9, 0xe2, 0x13, 0x6d, 0x80, 0x3d, 0xc3, 0x93,
  825. 0x94, 0x48, 0xa2, 0x2c, 0x5f, 0x09, 0x4f, 0x2a, 0x8f, 0x2d, 0xf7, 0x11, 0x6c, 0x1d, 0xa4, 0x8c,
  826. 0x06, 0xd1, 0x9c, 0x9e, 0xc6, 0x98, 0x71, 0x72, 0x82, 0x13, 0x16, 0x5e, 0xfa, 0xd1, 0x5c, 0x05,
  827. 0x37, 0x49, 0xa7, 0x94, 0x3b, 0x56, 0xbf, 0xba, 0xbb, 0xe6, 0x1b, 0xd1, 0xfd, 0xd9, 0x82, 0x8d,
  828. 0xb2, 0x55, 0x22, 0x1f, 0x14, 0x4f, 0x89, 0x3e, 0x5a, 0x7e, 0xa3, 0x1d, 0xe8, 0xd2, 0x74, 0x7a,
  829. 0x4e, 0xd8, 0x20, 0xba, 0x18, 0xb0, 0x68, 0xce, 0xa5, 0x13, 0xb6, 0xdf, 0x51, 0xda, 0x97, 0x17,
  830. 0x7e, 0x34, 0xe7, 0xe8, 0x23, 0xb8, 0xbe, 0x44, 0x99, 0x63, 0xab, 0x12, 0xb8, 0x6e, 0x80, 0x87,
  831. 0x4a, 0x8d, 0xee, 0x43, 0x4d, 0xee, 0x53, 0x93, 0x9c, 0x39, 0xde, 0x15, 0x01, 0xf8, 0x12, 0xe5,
  832. 0x7e, 0x07, 0xdd, 0x67, 0xe1, 0x84, 0xf0, 0x97, 0x73, 0x4a, 0x18, 0x1f, 0x87, 0x31, 0x7a, 0x68,
  833. 0xd8, 0xb0, 0xe4, 0x06, 0x3d, 0xaf, 0x68, 0xf7, 0x5e, 0x0b, 0xa3, 0x62, 0x5c, 0x01, 0x7b, 0x8f,
  834. 0x01, 0x96, 0xca, 0x3c, 0xbf, 0x76, 0x09, 0xbf, 0x76, 0x9e, 0xdf, 0xbf, 0x2b, 0x4b, 0x82, 0xf7,
  835. 0x29, 0x9e, 0x2c, 0x78, 0xc8, 0x7d, 0xc2, 0xd3, 0x49, 0xc2, 0x51, 0x1f, 0xda, 0x23, 0x86, 0x69,
  836. 0x3a, 0xc1, 0x2c, 0x4c, 0xcc, 0x7e, 0x79, 0x15, 0xea, 0x41, 0x93, 0xe3, 0x69, 0x3c, 0x09, 0xe9,
  837. 0x48, 0x6f, 0x9d, 0xc9, 0xe8, 0x01, 0x34, 0x62, 0x16, 0x7d, 0x43, 0x86, 0x89, 0xe4, 0xa9, 0xbd,
  838. 0xf7, 0xbf, 0x72, 0x22, 0x0c, 0x0a, 0xdd, 0x03, 0xfb, 0x42, 0x04, 0xaa, 0x79, 0xbb, 0x02, 0xae,
  839. 0x30, 0xe8, 0x63, 0xa8, 0xc7, 0x24, 0x8a, 0x27, 0xa2, 0xec, 0xdf, 0x81, 0xd6, 0x20, 0x74, 0x0c,
  840. 0x48, 0x7d, 0x0d, 0x42, 0x9a, 0x10, 0x86, 0x87, 0x89, 0xe8, 0xd6, 0xba, 0xf4, 0xab, 0xe7, 0x1d,
  841. 0x46, 0xd3, 0x98, 0x11, 0xce, 0x49, 0xa0, 0x16, 0xfb, 0xd1, 0x5c, 0xaf, 0xbf, 0xae, 0x56, 0x1d,
  842. 0x2f, 0x17, 0xa1, 0xc7, 0xb0, 0x2e, 0x5d, 0x18, 0x44, 0x26, 0x21, 0x4e, 0x43, 0xba, 0xb0, 0xbe,
  843. 0x92, 0x27, 0xbf, 0x7b, 0x51, 0x90, 0xdd, 0x5f, 0x2d, 0xb8, 0x79, 0xe5, 0x51, 0x25, 0x75, 0x68,
  844. 0xbd, 0x6f, 0x1d, 0x56, 0xca, 0xeb, 0x10, 0x41, 0x4d, 0xb4, 0xaa, 0x53, 0xed, 0x57, 0x77, 0xab,
  845. 0x7e, 0xcd, 0xdc, 0x55, 0x21, 0x0d, 0xc2, 0xa1, 0xa6, 0xd9, 0xf6, 0x8d, 0x88, 0x36, 0xa1, 0x1e,
  846. 0xd2, 0x20, 0x4e, 0x98, 0x64, 0xb4, 0xea, 0x6b, 0xc9, 0x3d, 0x85, 0xc6, 0x61, 0x94, 0xc6, 0x82,
  847. 0xf4, 0x0d, 0xb0, 0x43, 0x1a, 0x90, 0x4b, 0x59, 0x98, 0x2d, 0x5f, 0x09, 0x68, 0x0f, 0xea, 0x53,
  848. 0x19, 0x82, 0xf4, 0xe3, 0xdd, 0x7c, 0x6a, 0xa4, 0xbb, 0x03, 0x9d, 0xb3, 0x28, 0x1d, 0x8e, 0x49,
  849. 0x20, 0x39, 0x13, 0x3b, 0xab, 0xdc, 0x5b, 0xd2, 0x29, 0x25, 0xb8, 0x7f, 0x58, 0xb0, 0xa9, 0xcf,
  850. 0x5e, 0xad, 0xcd, 0x7b, 0xd0, 0x11, 0x98, 0xc1, 0x50, 0x99, 0x75, 0x2a, 0x9b, 0x9e, 0x86, 0xfb,
  851. 0x6d, 0x61, 0x35, 0x7e, 0x3f, 0x80, 0xae, 0xce, 0xbe, 0x81, 0x37, 0x56, 0xe0, 0x6b, 0xca, 0x6e,
  852. 0x16, 0x3c, 0x84, 0x8e, 0x5e, 0xa0, 0xbc, 0x52, 0xb7, 0xdf, 0x9a, 0x97, 0xf7, 0xd9, 0x6f, 0x2b,
  853. 0x88, 0x0a, 0xe0, 0xff, 0xd0, 0x56, 0x55, 0x31, 0x09, 0x29, 0xe1, 0x4e, 0x4b, 0x86, 0x01, 0x52,
  854. 0xf5, 0x42, 0x68, 0xdc, 0x1f, 0x2d, 0x80, 0x57, 0xfb, 0xa7, 0x67, 0x87, 0x63, 0x4c, 0x47, 0x04,
  855. 0xdd, 0x82, 0x96, 0xf4, 0x3f, 0x77, 0x1d, 0x35, 0x85, 0xe2, 0x0b, 0x71, 0x25, 0x6d, 0x03, 0x70,
  856. 0x36, 0x1c, 0x9c, 0x93, 0x8b, 0x88, 0x11, 0x3d, 0x3c, 0x5a, 0x9c, 0x0d, 0x0f, 0xa4, 0x42, 0xac,
  857. 0x15, 0x66, 0x7c, 0x91, 0x10, 0xa6, 0x07, 0x48, 0x93, 0xb3, 0xe1, 0xbe, 0x90, 0x85, 0x23, 0x29,
  858. 0xe6, 0x89, 0x59, 0x5c, 0x53, 0xf3, 0x45, 0xa8, 0xf4, 0xea, 0x6d, 0x90, 0x92, 0x5e, 0x6e, 0xab,
  859. 0xcd, 0x85, 0x46, 0xae, 0x77, 0x9f, 0xc2, 0xd6, 0xd2, 0x4d, 0x7e, 0x8a, 0x67, 0x84, 0x19, 0xce,
  860. 0x3f, 0x80, 0xc6, 0x50, 0xa9, 0xf5, 0xcd, 0xd4, 0xf6, 0x96, 0x50, 0xdf, 0xd8, 0xdc, 0xdf, 0x2d,
  861. 0xe8, 0x9e, 0x8e, 0xa3, 0x84, 0x12, 0xce, 0x7d, 0x32, 0x8c, 0x58, 0x20, 0x2a, 0x31, 0x59, 0xc4,
  862. 0xd9, 0xbd, 0x2b, 0xbe, 0xb3, 0xbb, 0xb8, 0x92, 0xbb, 0x8b, 0x11, 0xd4, 0x04, 0x09, 0x3a, 0x28,
  863. 0xf9, 0x8d, 0x3e, 0x85, 0xe6, 0x30, 0x4a, 0x45, 0x03, 0x9a, 0x9b, 0x61, 0xdb, 0x2b, 0x6e, 0x2f,
  864. 0xb2, 0x28, 0xed, 0xea, 0x4e, 0xcc, 0xe0, 0xbd, 0xcf, 0x60, 0xad, 0x60, 0xfa, 0x4f, 0x37, 0xe3,
  865. 0x11, 0x6c, 0x99, 0x63, 0x56, 0x8b, 0xef, 0x43, 0x68, 0x30, 0x79, 0xb2, 0x21, 0x62, 0x7d, 0xc5,
  866. 0x23, 0xdf, 0xd8, 0xdd, 0x3f, 0x2d, 0x68, 0x8b, 0x0a, 0x79, 0x1e, 0x72, 0x39, 0xdd, 0x73, 0x13,
  867. 0x59, 0x35, 0x51, 0x36, 0x91, 0x5f, 0xc3, 0x86, 0x66, 0x70, 0x70, 0xbe, 0x18, 0x04, 0x64, 0x46,
  868. 0x26, 0x51, 0x4c, 0x98, 0x53, 0x91, 0x27, 0xec, 0x78, 0xb9, 0x5d, 0x3c, 0x9d, 0x9d, 0x83, 0xc5,
  869. 0x91, 0x81, 0xa9, 0xd0, 0xd1, 0xf0, 0x2d, 0x43, 0xef, 0x2b, 0xd8, 0xba, 0x02, 0x5e, 0x42, 0x47,
  870. 0x3f, 0x4f, 0x47, 0x7b, 0x0f, 0x3c, 0x51, 0xbc, 0xa7, 0x09, 0x4e, 0x78, 0x9e, 0x9a, 0x1f, 0x2c,
  871. 0x70, 0x72, 0xee, 0x28, 0x5a, 0x4e, 0x08, 0xe7, 0x78, 0x44, 0xd0, 0x93, 0x7c, 0x2b, 0xaf, 0x38,
  872. 0x5e, 0x40, 0xaa, 0xeb, 0x52, 0xcf, 0x31, 0xb9, 0xa4, 0xf7, 0x0c, 0x60, 0xa9, 0x2c, 0x79, 0x27,
  873. 0xb8, 0x45, 0xf7, 0x3a, 0x85, 0xbd, 0x73, 0x0e, 0xbe, 0x82, 0x56, 0xe6, 0xb8, 0x48, 0x31, 0x0e,
  874. 0x02, 0x12, 0xe8, 0x38, 0x95, 0x20, 0x12, 0xc1, 0xc8, 0x34, 0x9a, 0x91, 0x40, 0xa7, 0xde, 0x88,
  875. 0x32, 0x45, 0x92, 0xb0, 0x40, 0x0f, 0x78, 0x23, 0x8a, 0xca, 0xae, 0x1f, 0x91, 0xd9, 0x11, 0x5e,
  876. 0xc9, 0x63, 0xe1, 0x65, 0xd5, 0x07, 0x9b, 0x8b, 0x73, 0xcb, 0x28, 0x94, 0x06, 0xf4, 0x09, 0xb4,
  877. 0x26, 0x98, 0x8e, 0x52, 0x2c, 0x3a, 0xa9, 0x2a, 0x59, 0xda, 0xf4, 0xd4, 0xbe, 0xde, 0x0b, 0x63,
  878. 0x50, 0xbc, 0x2c, 0x81, 0xbd, 0xe7, 0xd0, 0x2d, 0x1a, 0x4b, 0xf8, 0x79, 0xbf, 0xf4, 0x71, 0x68,
  879. 0x1c, 0x61, 0x51, 0x0b, 0x1c, 0xdd, 0x85, 0x5a, 0x40, 0x66, 0x26, 0x57, 0xc8, 0xd3, 0x7a, 0xe1,
  880. 0x8d, 0xf6, 0x40, 0xda, 0x7b, 0x4f, 0xa1, 0x95, 0xa9, 0x4a, 0xca, 0x66, 0xbb, 0x78, 0x6e, 0x43,
  881. 0x47, 0x93, 0x3f, 0xf4, 0x27, 0x0b, 0x6e, 0x88, 0x2d, 0x56, 0x7b, 0x69, 0x4f, 0x0c, 0xa9, 0x85,
  882. 0xf1, 0xe0, 0xb6, 0x57, 0x82, 0x11, 0x5e, 0x65, 0xde, 0xe0, 0x05, 0x17, 0x17, 0x60, 0x40, 0x66,
  883. 0x03, 0x35, 0x8b, 0x2a, 0xb2, 0x8d, 0x9a, 0x01, 0x99, 0x1d, 0x0b, 0xb9, 0xb7, 0x0f, 0xad, 0x0c,
  884. 0x5f, 0xe2, 0xea, 0xed, 0xa2, 0xab, 0x4d, 0x13, 0x72, 0xde, 0xd7, 0xaf, 0xa1, 0x75, 0x4a, 0xa8,
  885. 0x78, 0x00, 0xd3, 0x64, 0x79, 0x43, 0x88, 0x4d, 0x2a, 0x1a, 0x26, 0x5e, 0x3e, 0x22, 0xe1, 0x84,
  886. 0xca, 0x44, 0x4b, 0x0f, 0x8c, 0x9c, 0xaf, 0x8d, 0x6a, 0xa1, 0xc7, 0xdd, 0xdf, 0x2c, 0xd8, 0x3a,
  887. 0x54, 0xb0, 0xec, 0x00, 0x43, 0xc4, 0x6b, 0xb8, 0xc6, 0x8d, 0x4e, 0xde, 0x00, 0x78, 0xa1, 0x49,
  888. 0xb9, 0xef, 0x5d, 0xb1, 0xc6, 0xcb, 0x14, 0x07, 0x8b, 0x23, 0xbc, 0xd0, 0x8f, 0x70, 0x5e, 0x50,
  889. 0xf6, 0x4e, 0xe0, 0x46, 0x09, 0xec, 0x7d, 0x7a, 0x7f, 0x79, 0x5c, 0x8e, 0x9b, 0x37, 0x00, 0x87,
  890. 0x32, 0x1a, 0xd1, 0x7a, 0xa5, 0x0f, 0xea, 0x1e, 0x34, 0x4d, 0xd5, 0x9a, 0xe9, 0x64, 0xe4, 0x65,
  891. 0x73, 0xd4, 0xae, 0x68, 0x0e, 0xf7, 0x7b, 0xa8, 0xab, 0xfd, 0xb3, 0x9f, 0x27, 0x2b, 0xf7, 0xf3,
  892. 0xb4, 0x03, 0xdd, 0xf9, 0x98, 0xe4, 0xff, 0x8d, 0x2a, 0xf2, 0xe7, 0xa5, 0x23, 0xb4, 0xd9, 0x6f,
  893. 0xcf, 0x26, 0xd4, 0x71, 0x9a, 0x8c, 0x23, 0xa6, 0x1b, 0x58, 0x4b, 0xe8, 0x4e, 0xf1, 0x85, 0xd9,
  894. 0xf6, 0x96, 0x91, 0x98, 0x27, 0xc7, 0x1b, 0xf1, 0xe2, 0x90, 0xc9, 0x5a, 0x2d, 0xd4, 0x3b, 0xc5,
  895. 0x9b, 0x5b, 0x54, 0xb9, 0x42, 0x2e, 0x5b, 0xff, 0x0e, 0x74, 0xd4, 0x49, 0x85, 0xd2, 0x6c, 0x2b,
  896. 0x9d, 0xac, 0x4e, 0x77, 0x06, 0xb5, 0xb3, 0x45, 0x1c, 0x89, 0xaa, 0x9a, 0xb3, 0x88, 0x8e, 0x74,
  897. 0x74, 0x4a, 0x50, 0x95, 0xc3, 0x98, 0x78, 0x33, 0xab, 0xb1, 0x68, 0x44, 0x11, 0x92, 0x3a, 0x45,
  898. 0x53, 0xaa, 0xa5, 0x6c, 0x62, 0xd6, 0x72, 0x13, 0x13, 0x41, 0x4d, 0xbc, 0x42, 0xe4, 0x6c, 0xb7,
  899. 0x7d, 0xf9, 0xed, 0xde, 0x83, 0x8e, 0x38, 0x97, 0x1f, 0xe1, 0x04, 0x73, 0x92, 0xa0, 0x5b, 0x60,
  900. 0x27, 0x42, 0xd6, 0xb1, 0xd8, 0x9e, 0xb0, 0xfa, 0x4a, 0xe7, 0xfe, 0x62, 0xc1, 0xfa, 0xdb, 0xe1,
  901. 0xd7, 0xc7, 0x04, 0x07, 0x84, 0x49, 0x8f, 0xdb, 0x7b, 0xad, 0xec, 0x57, 0xd0, 0xd7, 0x06, 0xf4,
  902. 0x44, 0xf4, 0x04, 0x4d, 0xb2, 0x9e, 0x10, 0xed, 0xbc, 0xda, 0xca, 0x87, 0x1a, 0x90, 0x8d, 0x6a,
  903. 0x25, 0xaa, 0x51, 0x9d, 0x33, 0xfd, 0xdb, 0x4f, 0x62, 0x27, 0x57, 0x93, 0xe7, 0x75, 0xf9, 0x53,
  904. 0xfe, 0xe8, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x1e, 0xab, 0x56, 0x6d, 0xa0, 0x0f, 0x00, 0x00,
  905. }