quarkdash 1.0.5 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,877 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for sha.ts</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="prettify.css" />
9
- <link rel="stylesheet" href="base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="index.html">All files</a> sha.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">51.02% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>75/147</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">20% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>2/10</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">33.33% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>2/6</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">51.82% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>71/137</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line medium'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a>
245
- <a name='L180'></a><a href='#L180'>180</a>
246
- <a name='L181'></a><a href='#L181'>181</a>
247
- <a name='L182'></a><a href='#L182'>182</a>
248
- <a name='L183'></a><a href='#L183'>183</a>
249
- <a name='L184'></a><a href='#L184'>184</a>
250
- <a name='L185'></a><a href='#L185'>185</a>
251
- <a name='L186'></a><a href='#L186'>186</a>
252
- <a name='L187'></a><a href='#L187'>187</a>
253
- <a name='L188'></a><a href='#L188'>188</a>
254
- <a name='L189'></a><a href='#L189'>189</a>
255
- <a name='L190'></a><a href='#L190'>190</a>
256
- <a name='L191'></a><a href='#L191'>191</a>
257
- <a name='L192'></a><a href='#L192'>192</a>
258
- <a name='L193'></a><a href='#L193'>193</a>
259
- <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a>
261
- <a name='L196'></a><a href='#L196'>196</a>
262
- <a name='L197'></a><a href='#L197'>197</a>
263
- <a name='L198'></a><a href='#L198'>198</a>
264
- <a name='L199'></a><a href='#L199'>199</a>
265
- <a name='L200'></a><a href='#L200'>200</a>
266
- <a name='L201'></a><a href='#L201'>201</a>
267
- <a name='L202'></a><a href='#L202'>202</a>
268
- <a name='L203'></a><a href='#L203'>203</a>
269
- <a name='L204'></a><a href='#L204'>204</a>
270
- <a name='L205'></a><a href='#L205'>205</a>
271
- <a name='L206'></a><a href='#L206'>206</a>
272
- <a name='L207'></a><a href='#L207'>207</a>
273
- <a name='L208'></a><a href='#L208'>208</a>
274
- <a name='L209'></a><a href='#L209'>209</a>
275
- <a name='L210'></a><a href='#L210'>210</a>
276
- <a name='L211'></a><a href='#L211'>211</a>
277
- <a name='L212'></a><a href='#L212'>212</a>
278
- <a name='L213'></a><a href='#L213'>213</a>
279
- <a name='L214'></a><a href='#L214'>214</a>
280
- <a name='L215'></a><a href='#L215'>215</a>
281
- <a name='L216'></a><a href='#L216'>216</a>
282
- <a name='L217'></a><a href='#L217'>217</a>
283
- <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a>
285
- <a name='L220'></a><a href='#L220'>220</a>
286
- <a name='L221'></a><a href='#L221'>221</a>
287
- <a name='L222'></a><a href='#L222'>222</a>
288
- <a name='L223'></a><a href='#L223'>223</a>
289
- <a name='L224'></a><a href='#L224'>224</a>
290
- <a name='L225'></a><a href='#L225'>225</a>
291
- <a name='L226'></a><a href='#L226'>226</a>
292
- <a name='L227'></a><a href='#L227'>227</a>
293
- <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a>
295
- <a name='L230'></a><a href='#L230'>230</a>
296
- <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a>
299
- <a name='L234'></a><a href='#L234'>234</a>
300
- <a name='L235'></a><a href='#L235'>235</a>
301
- <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a>
303
- <a name='L238'></a><a href='#L238'>238</a>
304
- <a name='L239'></a><a href='#L239'>239</a>
305
- <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a>
311
- <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a>
313
- <a name='L248'></a><a href='#L248'>248</a>
314
- <a name='L249'></a><a href='#L249'>249</a>
315
- <a name='L250'></a><a href='#L250'>250</a>
316
- <a name='L251'></a><a href='#L251'>251</a>
317
- <a name='L252'></a><a href='#L252'>252</a>
318
- <a name='L253'></a><a href='#L253'>253</a>
319
- <a name='L254'></a><a href='#L254'>254</a>
320
- <a name='L255'></a><a href='#L255'>255</a>
321
- <a name='L256'></a><a href='#L256'>256</a>
322
- <a name='L257'></a><a href='#L257'>257</a>
323
- <a name='L258'></a><a href='#L258'>258</a>
324
- <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a>
326
- <a name='L261'></a><a href='#L261'>261</a>
327
- <a name='L262'></a><a href='#L262'>262</a>
328
- <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
331
- <span class="cline-any cline-neutral">&nbsp;</span>
332
- <span class="cline-any cline-neutral">&nbsp;</span>
333
- <span class="cline-any cline-neutral">&nbsp;</span>
334
- <span class="cline-any cline-neutral">&nbsp;</span>
335
- <span class="cline-any cline-neutral">&nbsp;</span>
336
- <span class="cline-any cline-neutral">&nbsp;</span>
337
- <span class="cline-any cline-neutral">&nbsp;</span>
338
- <span class="cline-any cline-neutral">&nbsp;</span>
339
- <span class="cline-any cline-neutral">&nbsp;</span>
340
- <span class="cline-any cline-neutral">&nbsp;</span>
341
- <span class="cline-any cline-neutral">&nbsp;</span>
342
- <span class="cline-any cline-yes">1x</span>
343
- <span class="cline-any cline-neutral">&nbsp;</span>
344
- <span class="cline-any cline-yes">1x</span>
345
- <span class="cline-any cline-neutral">&nbsp;</span>
346
- <span class="cline-any cline-neutral">&nbsp;</span>
347
- <span class="cline-any cline-neutral">&nbsp;</span>
348
- <span class="cline-any cline-neutral">&nbsp;</span>
349
- <span class="cline-any cline-neutral">&nbsp;</span>
350
- <span class="cline-any cline-neutral">&nbsp;</span>
351
- <span class="cline-any cline-neutral">&nbsp;</span>
352
- <span class="cline-any cline-neutral">&nbsp;</span>
353
- <span class="cline-any cline-neutral">&nbsp;</span>
354
- <span class="cline-any cline-neutral">&nbsp;</span>
355
- <span class="cline-any cline-neutral">&nbsp;</span>
356
- <span class="cline-any cline-neutral">&nbsp;</span>
357
- <span class="cline-any cline-neutral">&nbsp;</span>
358
- <span class="cline-any cline-neutral">&nbsp;</span>
359
- <span class="cline-any cline-neutral">&nbsp;</span>
360
- <span class="cline-any cline-neutral">&nbsp;</span>
361
- <span class="cline-any cline-neutral">&nbsp;</span>
362
- <span class="cline-any cline-yes">201600x</span>
363
- <span class="cline-any cline-neutral">&nbsp;</span>
364
- <span class="cline-any cline-neutral">&nbsp;</span>
365
- <span class="cline-any cline-neutral">&nbsp;</span>
366
- <span class="cline-any cline-neutral">&nbsp;</span>
367
- <span class="cline-any cline-neutral">&nbsp;</span>
368
- <span class="cline-any cline-neutral">&nbsp;</span>
369
- <span class="cline-any cline-neutral">&nbsp;</span>
370
- <span class="cline-any cline-neutral">&nbsp;</span>
371
- <span class="cline-any cline-neutral">&nbsp;</span>
372
- <span class="cline-any cline-yes">14x</span>
373
- <span class="cline-any cline-neutral">&nbsp;</span>
374
- <span class="cline-any cline-neutral">&nbsp;</span>
375
- <span class="cline-any cline-yes">14x</span>
376
- <span class="cline-any cline-yes">14x</span>
377
- <span class="cline-any cline-yes">14x</span>
378
- <span class="cline-any cline-yes">14x</span>
379
- <span class="cline-any cline-yes">14x</span>
380
- <span class="cline-any cline-yes">14x</span>
381
- <span class="cline-any cline-yes">14x</span>
382
- <span class="cline-any cline-yes">14x</span>
383
- <span class="cline-any cline-neutral">&nbsp;</span>
384
- <span class="cline-any cline-neutral">&nbsp;</span>
385
- <span class="cline-any cline-yes">14x</span>
386
- <span class="cline-any cline-yes">14x</span>
387
- <span class="cline-any cline-yes">14x</span>
388
- <span class="cline-any cline-yes">14x</span>
389
- <span class="cline-any cline-neutral">&nbsp;</span>
390
- <span class="cline-any cline-neutral">&nbsp;</span>
391
- <span class="cline-any cline-yes">14x</span>
392
- <span class="cline-any cline-yes">14x</span>
393
- <span class="cline-any cline-yes">14x</span>
394
- <span class="cline-any cline-neutral">&nbsp;</span>
395
- <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-yes">14x</span>
397
- <span class="cline-any cline-yes">350x</span>
398
- <span class="cline-any cline-neutral">&nbsp;</span>
399
- <span class="cline-any cline-neutral">&nbsp;</span>
400
- <span class="cline-any cline-yes">350x</span>
401
- <span class="cline-any cline-yes">5600x</span>
402
- <span class="cline-any cline-neutral">&nbsp;</span>
403
- <span class="cline-any cline-neutral">&nbsp;</span>
404
- <span class="cline-any cline-yes">350x</span>
405
- <span class="cline-any cline-yes">16800x</span>
406
- <span class="cline-any cline-yes">16800x</span>
407
- <span class="cline-any cline-yes">16800x</span>
408
- <span class="cline-any cline-neutral">&nbsp;</span>
409
- <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-neutral">&nbsp;</span>
411
- <span class="cline-any cline-yes">350x</span>
412
- <span class="cline-any cline-yes">350x</span>
413
- <span class="cline-any cline-yes">350x</span>
414
- <span class="cline-any cline-yes">350x</span>
415
- <span class="cline-any cline-yes">350x</span>
416
- <span class="cline-any cline-yes">350x</span>
417
- <span class="cline-any cline-yes">350x</span>
418
- <span class="cline-any cline-yes">350x</span>
419
- <span class="cline-any cline-neutral">&nbsp;</span>
420
- <span class="cline-any cline-neutral">&nbsp;</span>
421
- <span class="cline-any cline-yes">350x</span>
422
- <span class="cline-any cline-yes">22400x</span>
423
- <span class="cline-any cline-yes">22400x</span>
424
- <span class="cline-any cline-yes">22400x</span>
425
- <span class="cline-any cline-yes">22400x</span>
426
- <span class="cline-any cline-yes">22400x</span>
427
- <span class="cline-any cline-yes">22400x</span>
428
- <span class="cline-any cline-neutral">&nbsp;</span>
429
- <span class="cline-any cline-yes">22400x</span>
430
- <span class="cline-any cline-yes">22400x</span>
431
- <span class="cline-any cline-yes">22400x</span>
432
- <span class="cline-any cline-yes">22400x</span>
433
- <span class="cline-any cline-yes">22400x</span>
434
- <span class="cline-any cline-yes">22400x</span>
435
- <span class="cline-any cline-yes">22400x</span>
436
- <span class="cline-any cline-yes">22400x</span>
437
- <span class="cline-any cline-neutral">&nbsp;</span>
438
- <span class="cline-any cline-neutral">&nbsp;</span>
439
- <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-yes">350x</span>
441
- <span class="cline-any cline-yes">350x</span>
442
- <span class="cline-any cline-yes">350x</span>
443
- <span class="cline-any cline-yes">350x</span>
444
- <span class="cline-any cline-yes">350x</span>
445
- <span class="cline-any cline-yes">350x</span>
446
- <span class="cline-any cline-yes">350x</span>
447
- <span class="cline-any cline-yes">350x</span>
448
- <span class="cline-any cline-neutral">&nbsp;</span>
449
- <span class="cline-any cline-neutral">&nbsp;</span>
450
- <span class="cline-any cline-neutral">&nbsp;</span>
451
- <span class="cline-any cline-yes">14x</span>
452
- <span class="cline-any cline-yes">14x</span>
453
- <span class="cline-any cline-yes">14x</span>
454
- <span class="cline-any cline-yes">14x</span>
455
- <span class="cline-any cline-yes">14x</span>
456
- <span class="cline-any cline-yes">14x</span>
457
- <span class="cline-any cline-yes">14x</span>
458
- <span class="cline-any cline-yes">14x</span>
459
- <span class="cline-any cline-yes">14x</span>
460
- <span class="cline-any cline-yes">14x</span>
461
- <span class="cline-any cline-neutral">&nbsp;</span>
462
- <span class="cline-any cline-yes">14x</span>
463
- <span class="cline-any cline-neutral">&nbsp;</span>
464
- <span class="cline-any cline-neutral">&nbsp;</span>
465
- <span class="cline-any cline-neutral">&nbsp;</span>
466
- <span class="cline-any cline-neutral">&nbsp;</span>
467
- <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-neutral">&nbsp;</span>
469
- <span class="cline-any cline-yes">1x</span>
470
- <span class="cline-any cline-neutral">&nbsp;</span>
471
- <span class="cline-any cline-yes">1x</span>
472
- <span class="cline-any cline-neutral">&nbsp;</span>
473
- <span class="cline-any cline-neutral">&nbsp;</span>
474
- <span class="cline-any cline-neutral">&nbsp;</span>
475
- <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-neutral">&nbsp;</span>
477
- <span class="cline-any cline-neutral">&nbsp;</span>
478
- <span class="cline-any cline-neutral">&nbsp;</span>
479
- <span class="cline-any cline-neutral">&nbsp;</span>
480
- <span class="cline-any cline-neutral">&nbsp;</span>
481
- <span class="cline-any cline-neutral">&nbsp;</span>
482
- <span class="cline-any cline-neutral">&nbsp;</span>
483
- <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-neutral">&nbsp;</span>
485
- <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-neutral">&nbsp;</span>
487
- <span class="cline-any cline-neutral">&nbsp;</span>
488
- <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-neutral">&nbsp;</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-neutral">&nbsp;</span>
492
- <span class="cline-any cline-neutral">&nbsp;</span>
493
- <span class="cline-any cline-neutral">&nbsp;</span>
494
- <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-neutral">&nbsp;</span>
496
- <span class="cline-any cline-neutral">&nbsp;</span>
497
- <span class="cline-any cline-neutral">&nbsp;</span>
498
- <span class="cline-any cline-neutral">&nbsp;</span>
499
- <span class="cline-any cline-neutral">&nbsp;</span>
500
- <span class="cline-any cline-neutral">&nbsp;</span>
501
- <span class="cline-any cline-no">&nbsp;</span>
502
- <span class="cline-any cline-neutral">&nbsp;</span>
503
- <span class="cline-any cline-neutral">&nbsp;</span>
504
- <span class="cline-any cline-neutral">&nbsp;</span>
505
- <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-neutral">&nbsp;</span>
509
- <span class="cline-any cline-neutral">&nbsp;</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-no">&nbsp;</span>
512
- <span class="cline-any cline-neutral">&nbsp;</span>
513
- <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-no">&nbsp;</span>
515
- <span class="cline-any cline-no">&nbsp;</span>
516
- <span class="cline-any cline-no">&nbsp;</span>
517
- <span class="cline-any cline-no">&nbsp;</span>
518
- <span class="cline-any cline-no">&nbsp;</span>
519
- <span class="cline-any cline-no">&nbsp;</span>
520
- <span class="cline-any cline-no">&nbsp;</span>
521
- <span class="cline-any cline-no">&nbsp;</span>
522
- <span class="cline-any cline-neutral">&nbsp;</span>
523
- <span class="cline-any cline-no">&nbsp;</span>
524
- <span class="cline-any cline-no">&nbsp;</span>
525
- <span class="cline-any cline-no">&nbsp;</span>
526
- <span class="cline-any cline-no">&nbsp;</span>
527
- <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-no">&nbsp;</span>
529
- <span class="cline-any cline-no">&nbsp;</span>
530
- <span class="cline-any cline-neutral">&nbsp;</span>
531
- <span class="cline-any cline-no">&nbsp;</span>
532
- <span class="cline-any cline-no">&nbsp;</span>
533
- <span class="cline-any cline-neutral">&nbsp;</span>
534
- <span class="cline-any cline-no">&nbsp;</span>
535
- <span class="cline-any cline-no">&nbsp;</span>
536
- <span class="cline-any cline-neutral">&nbsp;</span>
537
- <span class="cline-any cline-neutral">&nbsp;</span>
538
- <span class="cline-any cline-no">&nbsp;</span>
539
- <span class="cline-any cline-no">&nbsp;</span>
540
- <span class="cline-any cline-no">&nbsp;</span>
541
- <span class="cline-any cline-no">&nbsp;</span>
542
- <span class="cline-any cline-neutral">&nbsp;</span>
543
- <span class="cline-any cline-neutral">&nbsp;</span>
544
- <span class="cline-any cline-no">&nbsp;</span>
545
- <span class="cline-any cline-no">&nbsp;</span>
546
- <span class="cline-any cline-no">&nbsp;</span>
547
- <span class="cline-any cline-no">&nbsp;</span>
548
- <span class="cline-any cline-no">&nbsp;</span>
549
- <span class="cline-any cline-no">&nbsp;</span>
550
- <span class="cline-any cline-no">&nbsp;</span>
551
- <span class="cline-any cline-no">&nbsp;</span>
552
- <span class="cline-any cline-neutral">&nbsp;</span>
553
- <span class="cline-any cline-no">&nbsp;</span>
554
- <span class="cline-any cline-no">&nbsp;</span>
555
- <span class="cline-any cline-no">&nbsp;</span>
556
- <span class="cline-any cline-no">&nbsp;</span>
557
- <span class="cline-any cline-no">&nbsp;</span>
558
- <span class="cline-any cline-no">&nbsp;</span>
559
- <span class="cline-any cline-no">&nbsp;</span>
560
- <span class="cline-any cline-neutral">&nbsp;</span>
561
- <span class="cline-any cline-no">&nbsp;</span>
562
- <span class="cline-any cline-no">&nbsp;</span>
563
- <span class="cline-any cline-no">&nbsp;</span>
564
- <span class="cline-any cline-no">&nbsp;</span>
565
- <span class="cline-any cline-no">&nbsp;</span>
566
- <span class="cline-any cline-no">&nbsp;</span>
567
- <span class="cline-any cline-no">&nbsp;</span>
568
- <span class="cline-any cline-no">&nbsp;</span>
569
- <span class="cline-any cline-neutral">&nbsp;</span>
570
- <span class="cline-any cline-neutral">&nbsp;</span>
571
- <span class="cline-any cline-no">&nbsp;</span>
572
- <span class="cline-any cline-no">&nbsp;</span>
573
- <span class="cline-any cline-no">&nbsp;</span>
574
- <span class="cline-any cline-no">&nbsp;</span>
575
- <span class="cline-any cline-no">&nbsp;</span>
576
- <span class="cline-any cline-no">&nbsp;</span>
577
- <span class="cline-any cline-no">&nbsp;</span>
578
- <span class="cline-any cline-no">&nbsp;</span>
579
- <span class="cline-any cline-neutral">&nbsp;</span>
580
- <span class="cline-any cline-neutral">&nbsp;</span>
581
- <span class="cline-any cline-no">&nbsp;</span>
582
- <span class="cline-any cline-no">&nbsp;</span>
583
- <span class="cline-any cline-no">&nbsp;</span>
584
- <span class="cline-any cline-no">&nbsp;</span>
585
- <span class="cline-any cline-no">&nbsp;</span>
586
- <span class="cline-any cline-no">&nbsp;</span>
587
- <span class="cline-any cline-no">&nbsp;</span>
588
- <span class="cline-any cline-no">&nbsp;</span>
589
- <span class="cline-any cline-no">&nbsp;</span>
590
- <span class="cline-any cline-no">&nbsp;</span>
591
- <span class="cline-any cline-neutral">&nbsp;</span>
592
- <span class="cline-any cline-no">&nbsp;</span>
593
- <span class="cline-any cline-neutral">&nbsp;</span>
594
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/**
595
- * QuarkDash SHA Implementations
596
- *
597
- * @git https://github.com/devsdaddy/quarkdash
598
- * @version 1.0.0
599
- * @author Elijah Rastorguev
600
- * @build 1000
601
- * @website https://dev.to/devsdaddy
602
- */
603
- /**
604
- * SHA-256 Implementation
605
- */
606
- export class SHA256 {
607
- // Constants
608
- private static readonly K: number[] = [
609
- 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
610
- 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,
611
- 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,
612
- 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,
613
- 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,
614
- 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,
615
- 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,
616
- 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2
617
- ];
618
- &nbsp;
619
- /**
620
- * Right Rotate
621
- * @param value {number} Value to rotate
622
- * @param amount {number} Rotate amount
623
- * @private
624
- */
625
- private static rightRotate(value: number, amount: number): number {
626
- return (value &gt;&gt;&gt; amount) | (value &lt;&lt; (32 - amount));
627
- }
628
- &nbsp;
629
- /**
630
- * Get SHA256 Hash
631
- * @param data {string|Uint8Array} Raw string or bytes array
632
- * @param returnBytes {boolean} Returns HEX String or Uint8Array
633
- * @returns {string|Uint8Array} HEX String or Uint8Array
634
- */
635
- static hash(data: string | Uint8Array, returnBytes : boolean = <span class="branch-0 cbranch-no" title="branch not covered" >false)</span>: string | Uint8Array {
636
- const msgBytes = typeof data === 'string' ? <span class="branch-0 cbranch-no" title="branch not covered" >new TextEncoder().encode(data) </span>: data;
637
- &nbsp;
638
- // Initial hash values
639
- let h0 = 0x6a09e667;
640
- let h1 = 0xbb67ae85;
641
- let h2 = 0x3c6ef372;
642
- let h3 = 0xa54ff53a;
643
- let h4 = 0x510e527f;
644
- let h5 = 0x9b05688c;
645
- let h6 = 0x1f83d9ab;
646
- let h7 = 0x5be0cd19;
647
- &nbsp;
648
- // Pre-processing: padding
649
- const ml = msgBytes.length * 8;
650
- const padded = new Uint8Array(((ml + 64 + 511) &amp; ~511) / 8);
651
- padded.set(msgBytes);
652
- padded[msgBytes.length] = 0x80;
653
- &nbsp;
654
- // Append length
655
- const dv = new DataView(padded.buffer);
656
- dv.setUint32(padded.length - 8, 0, false);
657
- dv.setUint32(padded.length - 4, ml, false);
658
- &nbsp;
659
- // Process chunks
660
- for (let i = 0; i &lt; padded.length; i += 64) {
661
- const w = new Array(64).fill(0);
662
- &nbsp;
663
- // Prepare message schedule
664
- for (let j = 0; j &lt; 16; j++) {
665
- w[j] = dv.getUint32(i + j * 4, false);
666
- }
667
- &nbsp;
668
- for (let j = 16; j &lt; 64; j++) {
669
- const s0 = this.rightRotate(w[j - 15], 7) ^ this.rightRotate(w[j - 15], 18) ^ (w[j - 15] &gt;&gt;&gt; 3);
670
- const s1 = this.rightRotate(w[j - 2], 17) ^ this.rightRotate(w[j - 2], 19) ^ (w[j - 2] &gt;&gt;&gt; 10);
671
- w[j] = (w[j - 16] + s0 + w[j - 7] + s1) &gt;&gt;&gt; 0;
672
- }
673
- &nbsp;
674
- // Initialize working variables
675
- let a = h0;
676
- let b = h1;
677
- let c = h2;
678
- let d = h3;
679
- let e = h4;
680
- let f = h5;
681
- let g = h6;
682
- let h = h7;
683
- &nbsp;
684
- // Main loop
685
- for (let j = 0; j &lt; 64; j++) {
686
- const S1 = this.rightRotate(e, 6) ^ this.rightRotate(e, 11) ^ this.rightRotate(e, 25);
687
- const ch = (e &amp; f) ^ ((~e) &amp; g);
688
- const temp1 = (h + S1 + ch + this.K[j] + w[j]) &gt;&gt;&gt; 0;
689
- const S0 = this.rightRotate(a, 2) ^ this.rightRotate(a, 13) ^ this.rightRotate(a, 22);
690
- const maj = (a &amp; b) ^ (a &amp; c) ^ (b &amp; c);
691
- const temp2 = (S0 + maj) &gt;&gt;&gt; 0;
692
- &nbsp;
693
- h = g;
694
- g = f;
695
- f = e;
696
- e = (d + temp1) &gt;&gt;&gt; 0;
697
- d = c;
698
- c = b;
699
- b = a;
700
- a = (temp1 + temp2) &gt;&gt;&gt; 0;
701
- }
702
- &nbsp;
703
- // Update hash values
704
- h0 = (h0 + a) &gt;&gt;&gt; 0;
705
- h1 = (h1 + b) &gt;&gt;&gt; 0;
706
- h2 = (h2 + c) &gt;&gt;&gt; 0;
707
- h3 = (h3 + d) &gt;&gt;&gt; 0;
708
- h4 = (h4 + e) &gt;&gt;&gt; 0;
709
- h5 = (h5 + f) &gt;&gt;&gt; 0;
710
- h6 = (h6 + g) &gt;&gt;&gt; 0;
711
- h7 = (h7 + h) &gt;&gt;&gt; 0;
712
- }
713
- &nbsp;
714
- // Produce final hash
715
- const result = new Uint8Array(32);
716
- const resultView = new DataView(result.buffer);
717
- resultView.setUint32(0, h0, false);
718
- resultView.setUint32(4, h1, false);
719
- resultView.setUint32(8, h2, false);
720
- resultView.setUint32(12, h3, false);
721
- resultView.setUint32(16, h4, false);
722
- resultView.setUint32(20, h5, false);
723
- resultView.setUint32(24, h6, false);
724
- resultView.setUint32(28, h7, false);
725
- &nbsp;
726
- return (returnBytes) ? result as Uint8Array : <span class="branch-1 cbranch-no" title="branch not covered" >Array.from(result).map(<span class="fstat-no" title="function not covered" >b </span>=&gt; <span class="cstat-no" title="statement not covered" >b.toString(16).padStart(2, '0'))</span>.join('') as string;</span>
727
- }
728
- }
729
- &nbsp;
730
- /**
731
- * SHA-512 Implementation
732
- */
733
- export class SHA512 {
734
- // Constants
735
- private static readonly K: bigint[] = [
736
- 0x428a2f98d728ae22n, 0x7137449123ef65cdn, 0xb5c0fbcfec4d3b2fn, 0xe9b5dba58189dbbcn,
737
- 0x3956c25bf348b538n, 0x59f111f1b605d019n, 0x923f82a4af194f9bn, 0xab1c5ed5da6d8118n,
738
- 0xd807aa98a3030242n, 0x12835b0145706fben, 0x243185be4ee4b28cn, 0x550c7dc3d5ffb4e2n,
739
- 0x72be5d74f27b896fn, 0x80deb1fe3b1696b1n, 0x9bdc06a725c71235n, 0xc19bf174cf692694n,
740
- 0xe49b69c19ef14ad2n, 0xefbe4786384f25e3n, 0x0fc19dc68b8cd5b5n, 0x240ca1cc77ac9c65n,
741
- 0x2de92c6f592b0275n, 0x4a7484aa6ea6e483n, 0x5cb0a9dcbd41fbd4n, 0x76f988da831153b5n,
742
- 0x983e5152ee66dfabn, 0xa831c66d2db43210n, 0xb00327c898fb213fn, 0xbf597fc7beef0ee4n,
743
- 0xc6e00bf33da88fc2n, 0xd5a79147930aa725n, 0x06ca6351e003826fn, 0x142929670a0e6e70n,
744
- 0x27b70a8546d22ffcn, 0x2e1b21385c26c926n, 0x4d2c6dfc5ac42aedn, 0x53380d139d95b3dfn,
745
- 0x650a73548baf63den, 0x766a0abb3c77b2a8n, 0x81c2c92e47edaee6n, 0x92722c851482353bn,
746
- 0xa2bfe8a14cf10364n, 0xa81a664bbc423001n, 0xc24b8b70d0f89791n, 0xc76c51a30654be30n,
747
- 0xd192e819d6ef5218n, 0xd69906245565a910n, 0xf40e35855771202an, 0x106aa07032bbd1b8n,
748
- 0x19a4c116b8d2d0c8n, 0x1e376c085141ab53n, 0x2748774cdf8eeb99n, 0x34b0bcb5e19b48a8n,
749
- 0x391c0cb3c5c95a63n, 0x4ed8aa4ae3418acbn, 0x5b9cca4f7763e373n, 0x682e6ff3d6b2b8a3n,
750
- 0x748f82ee5defb2fcn, 0x78a5636f43172f60n, 0x84c87814a1f0ab72n, 0x8cc702081a6439ecn,
751
- 0x90befffa23631e28n, 0xa4506cebde82bde9n, 0xbef9a3f7b2c67915n, 0xc67178f2e372532bn,
752
- 0xca273eceea26619cn, 0xd186b8c721c0c207n, 0xeada7dd6cde0eb1en, 0xf57d4f7fee6ed178n,
753
- 0x06f067aa72176fban, 0x0a637dc5a2c898a6n, 0x113f9804bef90daen, 0x1b710b35131c471bn,
754
- 0x28db77f523047d84n, 0x32caab7b40c72493n, 0x3c9ebe0a15c9bebcn, 0x431d67c49c100d4cn,
755
- 0x4cc5d4becb3e42b6n, 0x597f299cfc657e2an, 0x5fcb6fab3ad6faecn, 0x6c44198c4a475817n
756
- ];
757
- &nbsp;
758
- /**
759
- * Bitint right rotate
760
- * @param value {number} Value
761
- * @param amount {number} Rotate amount
762
- * @private
763
- */
764
- private <span class="fstat-no" title="function not covered" >static </span>rightRotate(value: bigint, amount: number): bigint {
765
- <span class="cstat-no" title="statement not covered" > return (value &gt;&gt; BigInt(amount)) | (value &lt;&lt; (64n - BigInt(amount)));</span>
766
- }
767
- &nbsp;
768
- /**
769
- * Get SHA512 Hash
770
- * @param data {string|Uint8Array} Raw string or bytes array
771
- * @param returnBytes {boolean} Returns HEX String or Uint8Array
772
- * @returns {string|Uint8Array} HEX String or Uint8Array
773
- */
774
- <span class="fstat-no" title="function not covered" > static </span>hash(data: string | Uint8Array, returnBytes : boolean = <span class="branch-0 cbranch-no" title="branch not covered" >false)</span>: string | Uint8Array {
775
- const msgBytes = <span class="cstat-no" title="statement not covered" >typeof data === "string" ? new TextEncoder().encode(data) : data;</span>
776
- &nbsp;
777
- // Initial hash values
778
- let h0 = <span class="cstat-no" title="statement not covered" >0x6a09e667f3bcc908n;</span>
779
- let h1 = <span class="cstat-no" title="statement not covered" >0xbb67ae8584caa73bn;</span>
780
- let h2 = <span class="cstat-no" title="statement not covered" >0x3c6ef372fe94f82bn;</span>
781
- let h3 = <span class="cstat-no" title="statement not covered" >0xa54ff53a5f1d36f1n;</span>
782
- let h4 = <span class="cstat-no" title="statement not covered" >0x510e527fade682d1n;</span>
783
- let h5 = <span class="cstat-no" title="statement not covered" >0x9b05688c2b3e6c1fn;</span>
784
- let h6 = <span class="cstat-no" title="statement not covered" >0x1f83d9abfb41bd6bn;</span>
785
- let h7 = <span class="cstat-no" title="statement not covered" >0x5be0cd19137e2179n;</span>
786
- &nbsp;
787
- const ml = <span class="cstat-no" title="statement not covered" >BigInt(msgBytes.length * 8);</span>
788
- const padded = <span class="cstat-no" title="statement not covered" >new Uint8Array((((Number(ml) + 128 + 1023) &amp; ~1023) / 8));</span>
789
- <span class="cstat-no" title="statement not covered" > padded.set(msgBytes);</span>
790
- <span class="cstat-no" title="statement not covered" > padded[msgBytes.length] = 0x80;</span>
791
- &nbsp;
792
- const dv = <span class="cstat-no" title="statement not covered" >new DataView(padded.buffer);</span>
793
- <span class="cstat-no" title="statement not covered" > dv.setBigUint64(padded.length - 8, ml, false);</span>
794
- &nbsp;
795
- <span class="cstat-no" title="statement not covered" > for (let i = <span class="cstat-no" title="statement not covered" >0;</span> i &lt; padded.length; i += 128) {</span>
796
- const w = <span class="cstat-no" title="statement not covered" >new Array(80).fill(0n);</span>
797
- &nbsp;
798
- <span class="cstat-no" title="statement not covered" > for (let j = <span class="cstat-no" title="statement not covered" >0;</span> j &lt; 16; j++) {</span>
799
- <span class="cstat-no" title="statement not covered" > w[j] = dv.getBigUint64(i + j * 8, false);</span>
800
- }
801
- &nbsp;
802
- <span class="cstat-no" title="statement not covered" > for (let j = <span class="cstat-no" title="statement not covered" >16;</span> j &lt; 80; j++) {</span>
803
- const s0 = <span class="cstat-no" title="statement not covered" >this.rightRotate(w[j - 15], 1) ^ this.rightRotate(w[j - 15], 8) ^ (w[j - 15] &gt;&gt; 7n);</span>
804
- const s1 = <span class="cstat-no" title="statement not covered" >this.rightRotate(w[j - 2], 19) ^ this.rightRotate(w[j - 2], 61) ^ (w[j - 2] &gt;&gt; 6n);</span>
805
- <span class="cstat-no" title="statement not covered" > w[j] = (w[j - 16] + s0 + w[j - 7] + s1) &amp; 0xffffffffffffffffn;</span>
806
- }
807
- &nbsp;
808
- let a = <span class="cstat-no" title="statement not covered" >h0;</span>
809
- let b = <span class="cstat-no" title="statement not covered" >h1;</span>
810
- let c = <span class="cstat-no" title="statement not covered" >h2;</span>
811
- let d = <span class="cstat-no" title="statement not covered" >h3;</span>
812
- let e = <span class="cstat-no" title="statement not covered" >h4;</span>
813
- let f = <span class="cstat-no" title="statement not covered" >h5;</span>
814
- let g = <span class="cstat-no" title="statement not covered" >h6;</span>
815
- let h = <span class="cstat-no" title="statement not covered" >h7;</span>
816
- &nbsp;
817
- <span class="cstat-no" title="statement not covered" > for (let j = <span class="cstat-no" title="statement not covered" >0;</span> j &lt; 80; j++) {</span>
818
- const S1 = <span class="cstat-no" title="statement not covered" >this.rightRotate(e, 14) ^ this.rightRotate(e, 18) ^ this.rightRotate(e, 41);</span>
819
- const ch = <span class="cstat-no" title="statement not covered" >(e &amp; f) ^ ((~e) &amp; g);</span>
820
- const temp1 = <span class="cstat-no" title="statement not covered" >(h + S1 + ch + this.K[j] + w[j]) &amp; 0xffffffffffffffffn;</span>
821
- const S0 = <span class="cstat-no" title="statement not covered" >this.rightRotate(a, 28) ^ this.rightRotate(a, 34) ^ this.rightRotate(a, 39);</span>
822
- const maj = <span class="cstat-no" title="statement not covered" >(a &amp; b) ^ (a &amp; c) ^ (b &amp; c);</span>
823
- const temp2 = <span class="cstat-no" title="statement not covered" >(S0 + maj) &amp; 0xffffffffffffffffn;</span>
824
- &nbsp;
825
- <span class="cstat-no" title="statement not covered" > h = g;</span>
826
- <span class="cstat-no" title="statement not covered" > g = f;</span>
827
- <span class="cstat-no" title="statement not covered" > f = e;</span>
828
- <span class="cstat-no" title="statement not covered" > e = (d + temp1) &amp; 0xffffffffffffffffn;</span>
829
- <span class="cstat-no" title="statement not covered" > d = c;</span>
830
- <span class="cstat-no" title="statement not covered" > c = b;</span>
831
- <span class="cstat-no" title="statement not covered" > b = a;</span>
832
- <span class="cstat-no" title="statement not covered" > a = (temp1 + temp2) &amp; 0xffffffffffffffffn;</span>
833
- }
834
- &nbsp;
835
- <span class="cstat-no" title="statement not covered" > h0 = (h0 + a) &amp; 0xffffffffffffffffn;</span>
836
- <span class="cstat-no" title="statement not covered" > h1 = (h1 + b) &amp; 0xffffffffffffffffn;</span>
837
- <span class="cstat-no" title="statement not covered" > h2 = (h2 + c) &amp; 0xffffffffffffffffn;</span>
838
- <span class="cstat-no" title="statement not covered" > h3 = (h3 + d) &amp; 0xffffffffffffffffn;</span>
839
- <span class="cstat-no" title="statement not covered" > h4 = (h4 + e) &amp; 0xffffffffffffffffn;</span>
840
- <span class="cstat-no" title="statement not covered" > h5 = (h5 + f) &amp; 0xffffffffffffffffn;</span>
841
- <span class="cstat-no" title="statement not covered" > h6 = (h6 + g) &amp; 0xffffffffffffffffn;</span>
842
- <span class="cstat-no" title="statement not covered" > h7 = (h7 + h) &amp; 0xffffffffffffffffn;</span>
843
- }
844
- &nbsp;
845
- const result = <span class="cstat-no" title="statement not covered" >new Uint8Array(64);</span>
846
- const resultView = <span class="cstat-no" title="statement not covered" >new DataView(result.buffer);</span>
847
- <span class="cstat-no" title="statement not covered" > resultView.setBigUint64(0, h0, false);</span>
848
- <span class="cstat-no" title="statement not covered" > resultView.setBigUint64(8, h1, false);</span>
849
- <span class="cstat-no" title="statement not covered" > resultView.setBigUint64(16, h2, false);</span>
850
- <span class="cstat-no" title="statement not covered" > resultView.setBigUint64(24, h3, false);</span>
851
- <span class="cstat-no" title="statement not covered" > resultView.setBigUint64(32, h4, false);</span>
852
- <span class="cstat-no" title="statement not covered" > resultView.setBigUint64(40, h5, false);</span>
853
- <span class="cstat-no" title="statement not covered" > resultView.setBigUint64(48, h6, false);</span>
854
- <span class="cstat-no" title="statement not covered" > resultView.setBigUint64(56, h7, false);</span>
855
- &nbsp;
856
- <span class="cstat-no" title="statement not covered" > return (returnBytes) ? result as Uint8Array : Array.from(result).map(<span class="fstat-no" title="function not covered" >b </span>=&gt; <span class="cstat-no" title="statement not covered" >b.toString(16).padStart(2, '0'))</span>.join('') as string;</span>
857
- }
858
- }</pre></td></tr></table></pre>
859
-
860
- <div class='push'></div><!-- for sticky footer -->
861
- </div><!-- /wrapper -->
862
- <div class='footer quiet pad2 space-top1 center small'>
863
- Code coverage generated by
864
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
865
- at 2026-04-07T10:15:46.746Z
866
- </div>
867
- <script src="prettify.js"></script>
868
- <script>
869
- window.onload = function () {
870
- prettyPrint();
871
- };
872
- </script>
873
- <script src="sorter.js"></script>
874
- <script src="block-navigation.js"></script>
875
- </body>
876
- </html>
877
-