• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

streetsidesoftware / regexp-worker / 15810503912

22 Jun 2025 08:28PM UTC coverage: 81.02% (-15.7%) from 96.703%
15810503912

Pull #975

github

web-flow
Merge 4ca3ad71e into 91a06790a
Pull Request #975: feat: Add browser support

375 of 468 branches covered (80.13%)

Branch coverage included in aggregate %.

19 of 100 new or added lines in 10 files covered. (19.0%)

6 existing lines in 1 file now uncovered.

419 of 512 relevant lines covered (81.84%)

116.3 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/worker/workerCodeBrowserDataURL.ts
1
// This file is auto-generated. Do not edit manually.
2
// cspell: disable
3

4
// eslint-disable-next-line quotes
NEW
5
export const workerCodeDataURL: string = `data:application/javascript;base64,\
×
6
Ly8jcmVnaW9uIHNyYy90aW1lci50cwpmdW5jdGlvbiBtZWFzdXJlRXhlY3V0aW9uKGZuKSB7Cgljb25z\
7
dCBzdGFydCA9IHBlcmZvcm1hbmNlLm5vdygpOwoJY29uc3QgciA9IGZuKCk7Cgljb25zdCBlbGFwc2Vk\
8
VGltZU1zID0gcGVyZm9ybWFuY2Uubm93KCkgLSBzdGFydDsKCXJldHVybiB7CgkJZWxhcHNlZFRpbWVN\
9
cywKCQlyCgl9Owp9CgovLyNlbmRyZWdpb24KLy8jcmVnaW9uIHNyYy9oZWxwZXJzL2V2YWx1YXRlUmVn\
10
RXhwLnRzCi8qKgoqIFJldHVybnMgYSB0aW1lZCB2ZXJzaW9uIG9mIFN0cmluZy5wcm90b3R5cGUubWF0\
11
Y2hBbGwKKiBAcGFyYW0gdGV4dAoqIEBwYXJhbSByZWdFeHAKKiBAcmV0dXJucwoqLwpmdW5jdGlvbiBt\
12
YXRjaEFsbFJlZ0V4cCh0ZXh0LCByZWdFeHApIHsKCWNvbnN0IHsgZWxhcHNlZFRpbWVNcywgciB9ID0g\
13
bWVhc3VyZUV4ZWN1dGlvbigoKSA9PiBkb01hdGNoQWxsUmVnRXhwKHJlZ0V4cCwgdGV4dCkpOwoJcmV0\
14
dXJuIHsKCQllbGFwc2VkVGltZU1zLAoJCW1hdGNoZXM6IEFycmF5LmZyb20ocikKCX07Cn0KLyoqCiog\
15
UmV0dXJucyBhIHRpbWVkIHZlcnNpb24gb2YgUmVnRXhwLmV4ZWMKKiBAcGFyYW0gcmVnRXhwCiogQHBh\
16
cmFtIHRleHQKKiBAcmV0dXJucwoqLwpmdW5jdGlvbiBleGVjUmVnRXhwKHJlZ0V4cCwgdGV4dCkgewoJ\
17
Y29uc3QgeyBlbGFwc2VkVGltZU1zLCByOiBtYXRjaCB9ID0gbWVhc3VyZUV4ZWN1dGlvbigoKSA9PiBk\
18
b0V4ZWNSZWdFeHAocmVnRXhwLCB0ZXh0KSk7CglyZXR1cm4gewoJCWVsYXBzZWRUaW1lTXMsCgkJbGFz\
19
dEluZGV4OiByZWdFeHAubGFzdEluZGV4LAoJCW1hdGNoCgl9Owp9Ci8qKgoqIFJldHVybnMgYSB0aW1l\
20
ZCB2ZXJzaW9uIG9mIFN0cmluZy5wcm90b3R5cGUubWF0Y2gKKiBAcGFyYW0gdGV4dAoqIEBwYXJhbSBy\
21
ZWdFeHAKKiBAcmV0dXJucwoqLwpmdW5jdGlvbiBtYXRjaFJlZ0V4cCh0ZXh0LCByZWdFeHApIHsKCWNv\
22
bnN0IHsgZWxhcHNlZFRpbWVNcywgcjogbWF0Y2ggfSA9IG1lYXN1cmVFeGVjdXRpb24oKCkgPT4gZG9N\
23
YXRjaFJlZ0V4cChyZWdFeHAsIHRleHQpKTsKCXJldHVybiB7CgkJZWxhcHNlZFRpbWVNcywKCQlsYXN0\
24
SW5kZXg6IHJlZ0V4cC5sYXN0SW5kZXgsCgkJbWF0Y2gKCX07Cn0KLyoqCiogUmV0dXJucyBhIHRpbWVk\
25
IHZlcnNpb24gb2YgbWF0Y2hBbGxSZWdFeHAgZm9yIGFuIGFycmF5IG9mIHJlZ3VsYXIgZXhwcmVzc2lv\
26
bnMKKiBAcGFyYW0gdGV4dAoqIEBwYXJhbSByZWdFeHBBcnJheQoqIEByZXR1cm5zCiovCmZ1bmN0aW9u\
27
IG1hdGNoQWxsUmVnRXhwQXJyYXkodGV4dCwgcmVnRXhwQXJyYXkpIHsKCWNvbnN0IHsgZWxhcHNlZFRp\
28
bWVNcywgcjogcmVzdWx0cyB9ID0gbWVhc3VyZUV4ZWN1dGlvbigoKSA9PiB7CgkJcmV0dXJuIHJlZ0V4\
29
cEFycmF5Lm1hcCgocikgPT4gbWF0Y2hBbGxSZWdFeHAodGV4dCwgcikpOwoJfSk7CglyZXR1cm4gewoJ\
30
CWVsYXBzZWRUaW1lTXMsCgkJcmVzdWx0cwoJfTsKfQovKioKKgoqIEBwYXJhbSByCiogQHBhcmFtIGRl\
31
ZmF1bHRGbGFncwoqIEByZXR1cm5zCiovCmZ1bmN0aW9uIHRvUmVnRXhwKHIsIGRlZmF1bHRGbGFncykg\
32
ewoJaWYgKHIgaW5zdGFuY2VvZiBSZWdFeHApIHJldHVybiByOwoJaWYgKHR5cGVvZiByID09PSAic3Ry\
33
aW5nIikgewoJCWNvbnN0IG1hdGNoID0gci5tYXRjaCgvXlwvKC4qKVwvKFtnaW1zdXldKikkLyk7CgkJ\
34
aWYgKG1hdGNoKSByZXR1cm4gbmV3IFJlZ0V4cChtYXRjaFsxXSwgbWF0Y2hbMl0gfHwgZGVmYXVsdEZs\
35
YWdzKTsKCQlyZXR1cm4gbmV3IFJlZ0V4cChyLCBkZWZhdWx0RmxhZ3MpOwoJfQoJaWYgKGlzUmVnRXhw\
36
TGlrZShyKSkgewoJCWNvbnN0IHJlZyA9IG5ldyBSZWdFeHAoci5zb3VyY2UsIHIuZmxhZ3MgfHwgZGVm\
37
YXVsdEZsYWdzKTsKCQlpZiAoci5sYXN0SW5kZXggIT09IHZvaWQgMCkgcmVnLmxhc3RJbmRleCA9IHIu\
38
bGFzdEluZGV4OwoJCXJldHVybiByZWc7Cgl9Cgl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIFJl\
39
Z0V4cCBvciBzdHJpbmcuIik7Cn0KZnVuY3Rpb24gaXNSZWdFeHBMaWtlKHIpIHsKCWlmIChyIGluc3Rh\
40
bmNlb2YgUmVnRXhwKSByZXR1cm4gdHJ1ZTsKCWlmIChyICYmIHR5cGVvZiByID09PSAib2JqZWN0IiAm\
41
JiAic291cmNlIiBpbiByICYmICJmbGFncyIgaW4gciAmJiB0eXBlb2Ygci5zb3VyY2UgPT09ICJzdHJp\
42
bmciICYmIHR5cGVvZiByLmZsYWdzID09PSAic3RyaW5nIikgcmV0dXJuIHRydWU7CglyZXR1cm4gZmFs\
43
c2U7Cn0KZnVuY3Rpb24gZG9FeGVjUmVnRXhwKHJlZ0V4cCwgdGV4dCkgewoJcmV0dXJuIHJlZ0V4cC5l\
44
eGVjKHRleHQpOwp9CmZ1bmN0aW9uIGRvTWF0Y2hBbGxSZWdFeHAocmVnRXhwLCB0ZXh0KSB7CglyZXR1\
45
cm4gcmVnRXhwW1N5bWJvbC5tYXRjaEFsbF0odGV4dCk7Cn0KZnVuY3Rpb24gZG9NYXRjaFJlZ0V4cChy\
46
ZWdFeHAsIHRleHQpIHsKCXJldHVybiB0ZXh0Lm1hdGNoKHJlZ0V4cCk7Cn0KZnVuY3Rpb24gdG9SYW5n\
47
ZXMocikgewoJY29uc3QgcmFuZ2VzID0gbmV3IFVpbnQzMkFycmF5KHIubWF0Y2hlcy5sZW5ndGggKiAy\
48
KTsKCWxldCBpID0gMDsKCWZvciAoY29uc3QgbSBvZiByLm1hdGNoZXMpIHsKCQljb25zdCBpbmRleCA9\
49
IG0uaW5kZXggfHwgMDsKCQlyYW5nZXNbaSsrXSA9IGluZGV4OwoJCXJhbmdlc1tpKytdID0gaW5kZXgg\
50
KyBtWzBdLmxlbmd0aDsKCX0KCXJldHVybiB7CgkJZWxhcHNlZFRpbWVNczogci5lbGFwc2VkVGltZU1z\
51
LAoJCXJhbmdlcwoJfTsKfQpmdW5jdGlvbiBtYXRjaEFsbFRvUmFuZ2VzUmVnRXhwKHRleHQsIHJlZ0V4\
52
cCkgewoJcmV0dXJuIHRvUmFuZ2VzKG1hdGNoQWxsUmVnRXhwKHRleHQsIHJlZ0V4cCkpOwp9CgovLyNl\
53
bmRyZWdpb24KLy8jcmVnaW9uIHNyYy91dGlsL2Zvcm1hdC50cwpmdW5jdGlvbiBmb3JtYXQodmFsdWUp\
54
IHsKCXN3aXRjaCAodHlwZW9mIHZhbHVlKSB7CgkJY2FzZSAiYmlnaW50IjogcmV0dXJuIHZhbHVlLnRv\
55
U3RyaW5nKCkgKyAibiI7CgkJY2FzZSAic3ltYm9sIjogcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCk7CgkJ\
56
Y2FzZSAiZnVuY3Rpb24iOiByZXR1cm4gdmFsdWUubmFtZSA/IGBGdW5jdGlvbjogJHt2YWx1ZS5uYW1l\
57
fWAgOiAiRnVuY3Rpb24iOwoJCWNhc2UgInVuZGVmaW5lZCI6IHJldHVybiAidW5kZWZpbmVkIjsKCQlj\
58
YXNlICJvYmplY3QiOiByZXR1cm4gb2JqVG9TdHJpbmcodmFsdWUpOwoJCWNhc2UgInN0cmluZyI6IHJl\
59
dHVybiB2YWx1ZTsKCX0KCXJldHVybiBTdHJpbmcodmFsdWUpOwp9CmZ1bmN0aW9uIG9ialRvU3RyaW5n\
60
KHZhbHVlKSB7Cgl0cnkgewoJCWlmICh2YWx1ZSA9PT0gbnVsbCkgcmV0dXJuICJudWxsIjsKCQlpZiAo\
61
dmFsdWUgaW5zdGFuY2VvZiBFcnJvcikgcmV0dXJuIGBFcnJvcjogJHt2YWx1ZS5tZXNzYWdlfVxuU3Rh\
62
Y2s6ICR7dmFsdWUuc3RhY2t9YDsKCQlpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHJldHVybiBgWyR7\
63
dmFsdWUubWFwKGZvcm1hdCkuam9pbigiLCAiKX1dYDsKCQlpZiAoInRvU3RyaW5nIiBpbiB2YWx1ZSAm\
64
JiB0eXBlb2YgdmFsdWUudG9TdHJpbmcgPT09ICJmdW5jdGlvbiIpIHJldHVybiB2YWx1ZVsidG9TdHJp\
65
bmciXSgpOwoJCXJldHVybiBKU09OLnN0cmluZ2lmeSh2YWx1ZSwgbnVsbCwgMik7Cgl9IGNhdGNoIHsK\
66
CQlyZXR1cm4gU3RyaW5nKHZhbHVlKTsKCX0KfQoKLy8jZW5kcmVnaW9uCi8vI3JlZ2lvbiBzcmMvaGVs\
67
cGVycy9lcnJvcnMudHMKY29uc3QgYWxsb3dTdHJpbmdPclVuZGVmaW5lZCA9IHsKCXN0cmluZzogdHJ1\
68
ZSwKCXVuZGVmaW5lZDogdHJ1ZQp9OwpmdW5jdGlvbiBpc0Vycm9yTGlrZShlKSB7CglpZiAoZSBpbnN0\
69
YW5jZW9mIEVycm9yKSByZXR1cm4gdHJ1ZTsKCWlmICghZSB8fCB0eXBlb2YgZSAhPT0gIm9iamVjdCIp\
70
IHJldHVybiBmYWxzZTsKCWNvbnN0IGV4ID0gZTsKCXJldHVybiB0eXBlb2YgZXgubmFtZSA9PSAic3Ry\
71
aW5nIiAmJiB0eXBlb2YgZXgubWVzc2FnZSA9PSAic3RyaW5nIiAmJiB0eXBlb2YgZXguc3RhY2sgaW4g\
72
YWxsb3dTdHJpbmdPclVuZGVmaW5lZDsKfQpmdW5jdGlvbiB0b0Vycm9yKGUpIHsKCWlmIChlIGluc3Rh\
73
bmNlb2YgRXJyb3IpIHJldHVybiBlOwoJaWYgKGlzRXJyb3JMaWtlKGUpKSByZXR1cm4gbmV3IEVycm9y\
74
KGUubWVzc2FnZSB8fCAiVW5rbm93biBlcnJvciIsIHsgY2F1c2U6IGUgfSk7CglpZiAodHlwZW9mIGUg\
75
PT09ICJzdHJpbmciKSByZXR1cm4gbmV3IEVycm9yKGUpOwoJcmV0dXJuIG5ldyBFcnJvcihTdHJpbmco\
76
ZSksIHsgY2F1c2U6IGUgfSk7Cn0KCi8vI2VuZHJlZ2lvbgovLyNyZWdpb24gc3JjL1Byb2NlZHVyZXMv\
77
dW5pcXVlSWQudHMKbGV0IGlkID0gdHQoKVswXTsKZnVuY3Rpb24gdHQoKSB7Cgljb25zdCBuID0gcGVy\
78
Zm9ybWFuY2Uubm93KCk7Cgljb25zdCBzID0gTWF0aC5mbG9vcihuIC8gMWUzKTsKCXJldHVybiBbcywg\
79
TWF0aC5mbG9vcigobiAtIHMgKiAxZTMpICogMWU2KV07Cn0KZnVuY3Rpb24gaXNJZCh2YWx1ZSkgewoJ\
80
aWYgKHR5cGVvZiB2YWx1ZSA9PT0gInN0cmluZyIgJiYgL15JRC1cZCstXGQrLVxkKy1cZCskLy50ZXN0\
81
KHZhbHVlKSkgewoJCWNvbnN0IFthLCBiLCBjLCBkXSA9IHZhbHVlLnNwbGl0KCItIikuc2xpY2UoMSku\
82
bWFwKCh2KSA9PiBOdW1iZXIucGFyc2VJbnQodiwgMTApKTsKCQlyZXR1cm4gYSA9PT0gYiAlIDEzICYm\
83
IGQgPT09IChiICsgYykgJSA3OwoJfQoJcmV0dXJuIGZhbHNlOwp9CmNvbnN0IE51bGxJRCA9ICJJRC0w\
84
LTAtMC0wIjsKCi8vI2VuZHJlZ2lvbgovLyNyZWdpb24gc3JjL1Byb2NlZHVyZXMvcHJvY2VkdXJlLnRz\
85
CmZ1bmN0aW9uIGlzUmVxdWVzdFR5cGUodiwgcmVxdWVzdFR5cGUpIHsKCXJldHVybiBpc1JlcXVlc3Qo\
86
dikgJiYgdi5yZXF1ZXN0VHlwZSA9PT0gcmVxdWVzdFR5cGU7Cn0KZnVuY3Rpb24gaXNSZXF1ZXN0KHYp\
87
IHsKCWlmICghdiB8fCB0eXBlb2YgdiAhPT0gIm9iamVjdCIpIHJldHVybiBmYWxzZTsKCWNvbnN0IHIg\
88
PSB2OwoJcmV0dXJuIHR5cGVvZiByLnJlcXVlc3RUeXBlID09PSAic3RyaW5nIiAmJiBpc0lkKHIuaWQp\
89
Owp9CmZ1bmN0aW9uIGNyZWF0ZVJlc3BvbnNlKGlkJDEsIHJlc3BvbnNlVHlwZSwgZGF0YSkgewoJcmV0\
90
dXJuIHsKCQlpZDogaWQkMSwKCQl0aW1lc3RhbXA6IERhdGUubm93KCksCgkJcmVzcG9uc2VUeXBlLAoJ\
91
CWRhdGEKCX07Cn0KY29uc3QgcmVzcG9uc2VUeXBlRXJyb3IgPSAiRXJyb3IiOwpmdW5jdGlvbiBjcmVh\
92
dGVFcnJvclJlc3BvbnNlKHJlcXVlc3QsIG1lc3NhZ2UsIGVycm9yKSB7CglpZiAoIWlzUmVxdWVzdChy\
93
ZXF1ZXN0KSkgewoJCWNvbnN0IHIgPSByZXF1ZXN0ICYmIHR5cGVvZiByZXF1ZXN0ID09PSAib2JqZWN0\
94
IiA/IHJlcXVlc3QgOiB7fTsKCQljb25zdCBpZCQyID0gaXNJZChyLmlkKSA/IHIuaWQgOiBOdWxsSUQ7\
95
CgkJcmV0dXJuIGNyZWF0ZVJlc3BvbnNlKGlkJDIsIHJlc3BvbnNlVHlwZUVycm9yLCB7CgkJCXJlcXVl\
96
c3RUeXBlOiB0eXBlb2Ygci5yZXF1ZXN0VHlwZSA9PT0gInN0cmluZyIgPyByLnJlcXVlc3RUeXBlIDog\
97
dm9pZCAwLAoJCQltZXNzYWdlLAoJCQllcnJvcjogdG9FcnJvcihlcnJvcikKCQl9KTsKCX0KCWNvbnN0\
98
IHsgaWQ6IGlkJDEsIHJlcXVlc3RUeXBlIH0gPSByZXF1ZXN0OwoJcmV0dXJuIGNyZWF0ZVJlc3BvbnNl\
99
KGlkJDEsIHJlc3BvbnNlVHlwZUVycm9yLCB7CgkJcmVxdWVzdFR5cGUsCgkJbWVzc2FnZSwKCQllcnJv\
100
cjogdG9FcnJvcihlcnJvcikKCX0pOwp9CgovLyNlbmRyZWdpb24KLy8jcmVnaW9uIHNyYy9Qcm9jZWR1\
101
cmVzL3Byb2NFeGVjUmVnRXhwLnRzCmNvbnN0IHJlcXVlc3RUeXBlRXhlY1JlZ0V4cCA9ICJFeGVjUmVn\
102
RXhwIjsKZnVuY3Rpb24gaXNFeGVjUmVnRXhwUmVxdWVzdCh2KSB7CglyZXR1cm4gaXNSZXF1ZXN0VHlw\
103
ZSh2LCByZXF1ZXN0VHlwZUV4ZWNSZWdFeHApOwp9CmZ1bmN0aW9uIHByb2NFeGVjUmVnRXhwKHIpIHsK\
104
CWlmICghaXNFeGVjUmVnRXhwUmVxdWVzdChyKSkgcmV0dXJuIHZvaWQgMDsKCXRyeSB7CgkJY29uc3Qg\
105
cmVnZXggPSB0b1JlZ0V4cChyLmRhdGEucmVnZXhwKTsKCQlyZXR1cm4gY3JlYXRlUmVzcG9uc2VFeGVj\
106
UmVnRXhwKHIsIGV4ZWNSZWdFeHAocmVnZXgsIHIuZGF0YS50ZXh0KSk7Cgl9IGNhdGNoIChlKSB7CgkJ\
107
cmV0dXJuIGNyZWF0ZUVycm9yUmVzcG9uc2UociwgZm9ybWF0KGUpKTsKCX0KfQpmdW5jdGlvbiBjcmVh\
108
dGVSZXNwb25zZUV4ZWNSZWdFeHAocmVxdWVzdCwgZGF0YSkgewoJcmV0dXJuIGNyZWF0ZVJlc3BvbnNl\
109
KHJlcXVlc3QuaWQsIHJlcXVlc3QucmVxdWVzdFR5cGUsIGRhdGEpOwp9CgovLyNlbmRyZWdpb24KLy8j\
110
cmVnaW9uIHNyYy9Qcm9jZWR1cmVzL3Byb2NNYXRjaEFsbFJlZ0V4cC50cwpjb25zdCByZXF1ZXN0VHlw\
111
ZU1hdGNoQWxsUmVnRXhwID0gIk1hdGNoQWxsUmVnRXhwIjsKZnVuY3Rpb24gaXNNYXRjaEFsbFJlZ0V4\
112
cFJlcXVlc3QodikgewoJcmV0dXJuIGlzUmVxdWVzdFR5cGUodiwgcmVxdWVzdFR5cGVNYXRjaEFsbFJl\
113
Z0V4cCk7Cn0KZnVuY3Rpb24gcHJvY01hdGNoQWxsUmVnRXhwKHIpIHsKCWlmICghaXNNYXRjaEFsbFJl\
114
Z0V4cFJlcXVlc3QocikpIHJldHVybiB2b2lkIDA7Cgl0cnkgewoJCWNvbnN0IHJlZ2V4ID0gdG9SZWdF\
115
eHAoci5kYXRhLnJlZ2V4cCk7CgkJY29uc3QgcmVnZXhSZXN1bHQgPSBtYXRjaEFsbFJlZ0V4cChyLmRh\
116
dGEudGV4dCwgcmVnZXgpOwoJCXJldHVybiBjcmVhdGVSZXNwb25zZU1hdGNoQWxsUmVnRXhwKHIsIHJl\
117
Z2V4UmVzdWx0KTsKCX0gY2F0Y2ggKGUpIHsKCQlyZXR1cm4gY3JlYXRlRXJyb3JSZXNwb25zZShyLCBm\
118
b3JtYXQoZSkpOwoJfQp9CmZ1bmN0aW9uIGNyZWF0ZVJlc3BvbnNlTWF0Y2hBbGxSZWdFeHAocmVxdWVz\
119
dCwgZGF0YSkgewoJcmV0dXJuIGNyZWF0ZVJlc3BvbnNlKHJlcXVlc3QuaWQsIHJlcXVlc3QucmVxdWVz\
120
dFR5cGUsIGRhdGEpOwp9CgovLyNlbmRyZWdpb24KLy8jcmVnaW9uIHNyYy9Qcm9jZWR1cmVzL3Byb2NN\
121
YXRjaEFsbFJlZ0V4cEFycmF5LnRzCmNvbnN0IHJlcXVlc3RUeXBlTWF0Y2hSZWdFeHBBcnJheSA9ICJN\
122
YXRjaEFsbFJlZ0V4cEFycmF5IjsKZnVuY3Rpb24gaXNNYXRjaFJlZ0V4cEFycmF5UmVxdWVzdCh2KSB7\
123
CglyZXR1cm4gaXNSZXF1ZXN0VHlwZSh2LCByZXF1ZXN0VHlwZU1hdGNoUmVnRXhwQXJyYXkpOwp9CmZ1\
124
bmN0aW9uIHByb2NNYXRjaEFsbFJlZ0V4cEFycmF5KHIpIHsKCWlmICghaXNNYXRjaFJlZ0V4cEFycmF5\
125
UmVxdWVzdChyKSkgcmV0dXJuIHZvaWQgMDsKCXRyeSB7CgkJY29uc3QgcmVnZXggPSByLmRhdGEucmVn\
126
ZXhwcy5tYXAoKHIkMSkgPT4gdG9SZWdFeHAociQxKSk7CgkJY29uc3QgcmVnZXhSZXN1bHQgPSBtYXRj\
127
aEFsbFJlZ0V4cEFycmF5KHIuZGF0YS50ZXh0LCByZWdleCk7CgkJcmV0dXJuIGNyZWF0ZVJlc3BvbnNl\
128
TWF0Y2hSZWdFeHBBcnJheShyLCByZWdleFJlc3VsdCk7Cgl9IGNhdGNoIChlKSB7CgkJcmV0dXJuIGNy\
129
ZWF0ZUVycm9yUmVzcG9uc2UociwgZm9ybWF0KGUpKTsKCX0KfQpmdW5jdGlvbiBjcmVhdGVSZXNwb25z\
130
ZU1hdGNoUmVnRXhwQXJyYXkocmVxdWVzdCwgZGF0YSkgewoJcmV0dXJuIGNyZWF0ZVJlc3BvbnNlKHJl\
131
cXVlc3QuaWQsIHJlcXVlc3QucmVxdWVzdFR5cGUsIGRhdGEpOwp9CgovLyNlbmRyZWdpb24KLy8jcmVn\
132
aW9uIHNyYy9Qcm9jZWR1cmVzL3Byb2NNYXRjaEFsbFJlZ0V4cEFzUmFuZ2UudHMKY29uc3QgcmVxdWVz\
133
dFR5cGVNYXRjaEFsbFJlZ0V4cEFzUmFuZ2UgPSAiTWF0Y2hBbGxSZWdFeHBBc1JhbmdlIjsKZnVuY3Rp\
134
b24gaXNNYXRjaEFsbFJlZ0V4cEFzUmFuZ2VSZXF1ZXN0KHYpIHsKCXJldHVybiBpc1JlcXVlc3RUeXBl\
135
KHYsIHJlcXVlc3RUeXBlTWF0Y2hBbGxSZWdFeHBBc1JhbmdlKTsKfQpmdW5jdGlvbiBwcm9jTWF0Y2hB\
136
bGxSZWdFeHBBc1JhbmdlKHIpIHsKCWlmICghaXNNYXRjaEFsbFJlZ0V4cEFzUmFuZ2VSZXF1ZXN0KHIp\
137
KSByZXR1cm4gdm9pZCAwOwoJdHJ5IHsKCQljb25zdCByZWdleCA9IHRvUmVnRXhwKHIuZGF0YS5yZWdl\
138
eHApOwoJCWNvbnN0IHJlZ2V4UmVzdWx0ID0gbWF0Y2hBbGxUb1Jhbmdlc1JlZ0V4cChyLmRhdGEudGV4\
139
dCwgcmVnZXgpOwoJCXJldHVybiBjcmVhdGVSZXNwb25zZU1hdGNoQWxsUmVnRXhwQXNSYW5nZShyLCBy\
140
ZWdleFJlc3VsdCk7Cgl9IGNhdGNoIChlKSB7CgkJcmV0dXJuIGNyZWF0ZUVycm9yUmVzcG9uc2Uociwg\
141
Zm9ybWF0KGUpKTsKCX0KfQpmdW5jdGlvbiBjcmVhdGVSZXNwb25zZU1hdGNoQWxsUmVnRXhwQXNSYW5n\
142
ZShyZXF1ZXN0LCBkYXRhKSB7CglyZXR1cm4gY3JlYXRlUmVzcG9uc2UocmVxdWVzdC5pZCwgcmVxdWVz\
143
dC5yZXF1ZXN0VHlwZSwgZGF0YSk7Cn0KCi8vI2VuZHJlZ2lvbgovLyNyZWdpb24gc3JjL1Byb2NlZHVy\
144
ZXMvcHJvY01hdGNoUmVnRXhwLnRzCmNvbnN0IHJlcXVlc3RUeXBlTWF0Y2hSZWdFeHAgPSAiTWF0Y2hS\
145
ZWdFeHAiOwpmdW5jdGlvbiBpc01hdGNoUmVnRXhwUmVxdWVzdCh2KSB7CglyZXR1cm4gaXNSZXF1ZXN0\
146
VHlwZSh2LCByZXF1ZXN0VHlwZU1hdGNoUmVnRXhwKTsKfQpmdW5jdGlvbiBwcm9jTWF0Y2hSZWdFeHAo\
147
cikgewoJaWYgKCFpc01hdGNoUmVnRXhwUmVxdWVzdChyKSkgcmV0dXJuIHZvaWQgMDsKCXRyeSB7CgkJ\
148
Y29uc3QgcmVnZXggPSB0b1JlZ0V4cChyLmRhdGEucmVnZXhwKTsKCQljb25zdCByZWdleFJlc3VsdCA9\
149
IG1hdGNoUmVnRXhwKHIuZGF0YS50ZXh0LCByZWdleCk7CgkJcmV0dXJuIGNyZWF0ZVJlc3BvbnNlTWF0\
150
Y2hSZWdFeHAociwgcmVnZXhSZXN1bHQpOwoJfSBjYXRjaCAoZSkgewoJCXJldHVybiBjcmVhdGVFcnJv\
151
clJlc3BvbnNlKHIsIGZvcm1hdChlKSk7Cgl9Cn0KZnVuY3Rpb24gY3JlYXRlUmVzcG9uc2VNYXRjaFJl\
152
Z0V4cChyZXF1ZXN0LCBkYXRhKSB7CglyZXR1cm4gY3JlYXRlUmVzcG9uc2UocmVxdWVzdC5pZCwgcmVx\
153
dWVzdC5yZXF1ZXN0VHlwZSwgZGF0YSk7Cn0KCi8vI2VuZHJlZ2lvbgovLyNyZWdpb24gc3JjL1Byb2Nl\
154
ZHVyZXMvcHJvY2VkdXJlcy50cwovKioKKiBDb2xsZWN0aW9uIG9mIGFsbCBwcm9jZWR1cmVzIHJlbGF0\
155
ZWQgdG8gcmVndWxhciBleHByZXNzaW9ucy4KKiBPcmRlciBpcyBpbXBvcnRhbnQgZm9yIHRoZSB3b3Jr\
156
ZXIsIGFzIGl0IHByb2Nlc3NlcyB0aGVtIHNlcXVlbnRpYWxseS4KKi8KY29uc3QgcHJvY2VkdXJlcyA9\
157
IFsKCXByb2NNYXRjaEFsbFJlZ0V4cCwKCXByb2NNYXRjaEFsbFJlZ0V4cEFzUmFuZ2UsCglwcm9jRXhl\
158
Y1JlZ0V4cCwKCXByb2NNYXRjaEFsbFJlZ0V4cEFycmF5LAoJcHJvY01hdGNoUmVnRXhwCl07CgovLyNl\
159
bmRyZWdpb24KLy8jcmVnaW9uIHNyYy93b3JrZXIvTG9nTGV2ZWwudHMKbGV0IExvZ0xldmVsID0gLyog\
160
QF9fUFVSRV9fICovIGZ1bmN0aW9uKExvZ0xldmVsJDEpIHsKCUxvZ0xldmVsJDFbTG9nTGV2ZWwkMVsi\
161
TG9nTGV2ZWxOb25lIl0gPSAwXSA9ICJMb2dMZXZlbE5vbmUiOwoJTG9nTGV2ZWwkMVtMb2dMZXZlbCQx\
162
WyJMb2dMZXZlbEVycm9yIl0gPSAxXSA9ICJMb2dMZXZlbEVycm9yIjsKCUxvZ0xldmVsJDFbTG9nTGV2\
163
ZWwkMVsiTG9nTGV2ZWxXYXJuIl0gPSAyXSA9ICJMb2dMZXZlbFdhcm4iOwoJTG9nTGV2ZWwkMVtMb2dM\
164
ZXZlbCQxWyJMb2dMZXZlbEluZm8iXSA9IDNdID0gIkxvZ0xldmVsSW5mbyI7CglMb2dMZXZlbCQxW0xv\
165
Z0xldmVsJDFbIkxvZ0xldmVsRGVidWciXSA9IDRdID0gIkxvZ0xldmVsRGVidWciOwoJcmV0dXJuIExv\
166
Z0xldmVsJDE7Cn0oe30pOwoKLy8jZW5kcmVnaW9uCi8vI3JlZ2lvbiBzcmMvd29ya2VyL01lc3NhZ2VQ\
167
b3J0LnRzCmNvbnN0IG51bGxQb3J0ID0gT2JqZWN0LmZyZWV6ZSh7Cglwb3N0TWVzc2FnZSgpIHt9LAoJ\
168
b24oKSB7CgkJcmV0dXJuIG51bGxQb3J0OwoJfSwKCW9mZigpIHsKCQlyZXR1cm4gbnVsbFBvcnQ7Cgl9\
169
LAoJb25jZSgpIHsKCQlyZXR1cm4gbnVsbFBvcnQ7Cgl9Cn0pOwoKLy8jZW5kcmVnaW9uCi8vI3JlZ2lv\
170
biBzcmMvd29ya2VyL1dvcmtlck1lc3NhZ2VIYW5kbGVyLnRzCnZhciBXb3JrZXJNZXNzYWdlSGFuZGxl\
171
ciA9IGNsYXNzIHsKCWxvZ0xldmVsID0gTG9nTGV2ZWwuTG9nTGV2ZWxFcnJvcjsKCWxpc3RlbmVyOwoJ\
172
Y29uc3RydWN0b3IocG9ydCwgcHJvY2VkdXJlcyQxKSB7CgkJdGhpcy5wb3J0ID0gcG9ydDsKCQl0aGlz\
173
LnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzJDE7CgkJdGhpcy5saXN0ZW5lciA9ICh2KSA9PiB0aGlzLmxp\
174
c3RlbmVyTWVzc2FnZSh2KTsKCQlwb3J0Lm9uKCJtZXNzYWdlIiwgdGhpcy5saXN0ZW5lcik7Cgl9Cglk\
175
aXNwb3NlKCkgewoJCXRoaXMucG9ydC5vZmYoIm1lc3NhZ2UiLCB0aGlzLmxpc3RlbmVyKTsKCQl0aGlz\
176
LnBvcnQgPSBudWxsUG9ydDsKCX0KCXBvc3QobXNnKSB7CgkJdGhpcy5sb2coTG9nTGV2ZWwuTG9nTGV2\
177
ZWxEZWJ1ZywgIlBvc3Q6ICIgKyBKU09OLnN0cmluZ2lmeShtc2cpKTsKCQl0aGlzLnBvcnQucG9zdE1l\
178
c3NhZ2UobXNnKTsKCX0KCWxvZyhsZXZlbCwgLi4ucGFyYW1zKSB7CgkJaWYgKGxldmVsID4gdGhpcy5s\
179
b2dMZXZlbCkgcmV0dXJuOwoJCXN3aXRjaCAobGV2ZWwpIHsKCQkJY2FzZSBMb2dMZXZlbC5Mb2dMZXZl\
180
bEVycm9yOgoJCQkJY29uc29sZS5lcnJvciguLi5wYXJhbXMpOwoJCQkJYnJlYWs7CgkJCWNhc2UgTG9n\
181
TGV2ZWwuTG9nTGV2ZWxXYXJuOgoJCQkJY29uc29sZS53YXJuKC4uLnBhcmFtcyk7CgkJCQlicmVhazsK\
182
CQkJZGVmYXVsdDogY29uc29sZS5sb2coLi4ucGFyYW1zKTsKCQl9Cgl9CglsaXN0ZW5lck1lc3NhZ2Uo\
183
dmFsdWUpIHsKCQl0aGlzLmxvZyhMb2dMZXZlbC5Mb2dMZXZlbERlYnVnLCBgbWVzc2FnZTogJHtKU09O\
184
LnN0cmluZ2lmeSh2YWx1ZSl9YCk7CgkJaWYgKCFpc1JlcXVlc3QodmFsdWUpKSB7CgkJCWNvbnN0IG1z\
185
ZyA9IGBCYWRseSBmb3JtZWQgUmVxdWVzdDogJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDsKCQkJdGhp\
186
cy5sb2coTG9nTGV2ZWwuTG9nTGV2ZWxFcnJvciwgbXNnKTsKCQkJdGhpcy5wb3N0KGNyZWF0ZUVycm9y\
187
UmVzcG9uc2UodmFsdWUsIG1zZykpOwoJCQlyZXR1cm47CgkJfQoJCWNvbnN0IHJlcXVlc3QgPSB2YWx1\
188
ZTsKCQlmb3IgKGNvbnN0IHByb2Mgb2YgdGhpcy5wcm9jZWR1cmVzKSB0cnkgewoJCQljb25zdCByZXNw\
189
b25zZSA9IHByb2MocmVxdWVzdCk7CgkJCWlmIChyZXNwb25zZSAhPT0gdm9pZCAwKSB7CgkJCQlQcm9t\
190
aXNlLnJlc29sdmUocmVzcG9uc2UpLmNhdGNoKChyZWFzb24pID0+IGNyZWF0ZUVycm9yUmVzcG9uc2Uo\
191
cmVxdWVzdCwgU3RyaW5nKHJlYXNvbiksIHRvRXJyb3IocmVhc29uKSkpLnRoZW4oKHIpID0+IHRoaXMu\
192
cG9zdChyKSkuY2F0Y2goKCkgPT4ge30pOwoJCQkJcmV0dXJuOwoJCQl9CgkJfSBjYXRjaCAoZSkgewoJ\
193
CQljb25zdCBtc2cgPSBpc0Vycm9yTGlrZShlKSA/IGUubWVzc2FnZSA6IGZvcm1hdChlKTsKCQkJdGhp\
194
cy5wb3N0KGNyZWF0ZUVycm9yUmVzcG9uc2UocmVxdWVzdCwgbXNnLCBpc0Vycm9yTGlrZShlKSA/IGUg\
195
OiB2b2lkIDApKTsKCQkJcmV0dXJuOwoJCX0KCQl0aGlzLmxvZyhMb2dMZXZlbC5Mb2dMZXZlbFdhcm4s\
196
IGBVbmhhbmRsZWQgUmVxdWVzdCAiJHt2YWx1ZS5yZXF1ZXN0VHlwZX0iYCk7CgkJdGhpcy5wb3N0KGNy\
197
ZWF0ZUVycm9yUmVzcG9uc2UocmVxdWVzdCwgIlVuaGFuZGxlZCBSZXF1ZXN0IikpOwoJfQp9OwpmdW5j\
198
dGlvbiBjcmVhdGVIYW5kbGVyKHBvcnQsIHByb2NlZHVyZXMkMSkgewoJcmV0dXJuIG5ldyBXb3JrZXJN\
199
ZXNzYWdlSGFuZGxlcihwb3J0LCBwcm9jZWR1cmVzJDEpOwp9CgovLyNlbmRyZWdpb24KLy8jcmVnaW9u\
200
IHNyYy93b3JrZXIvd29ya2VyQ29kZUJyb3dzZXIudHMKdmFyIEJyb3dzZXJNZXNzYWdlUG9ydCA9IGNs\
201
YXNzIHsKCSNtZXNzYWdlTGlzdGVuZXJzID0gLyogQF9fUFVSRV9fICovIG5ldyBTZXQoKTsKCWNvbnN0\
202
cnVjdG9yKCkgewoJCWdsb2JhbFRoaXMuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsIHRoaXMuI2xp\
203
c3RlbmVyTWVzc2FnZSk7Cgl9Cglwb3N0TWVzc2FnZSh2YWx1ZSkgewoJCWdsb2JhbFRoaXMucG9zdE1l\
204
c3NhZ2UodmFsdWUpOwoJfQoJb24oZXZlbnQsIGxpc3RlbmVyKSB7CgkJaWYgKGV2ZW50ID09PSAibWVz\
205
c2FnZSIpIHRoaXMuI21lc3NhZ2VMaXN0ZW5lcnMuYWRkKGxpc3RlbmVyKTsKCQlyZXR1cm4gdGhpczsK\
206
CX0KCW9mZihldmVudCwgbGlzdGVuZXIpIHsKCQlpZiAoZXZlbnQgPT09ICJtZXNzYWdlIikgdGhpcy4j\
207
bWVzc2FnZUxpc3RlbmVycy5kZWxldGUobGlzdGVuZXIpOwoJCXJldHVybiB0aGlzOwoJfQoJI2xpc3Rl\
208
bmVyTWVzc2FnZSA9IChldmVudCkgPT4gewoJCWZvciAoY29uc3QgbGlzdGVuZXIgb2YgdGhpcy4jbWVz\
209
c2FnZUxpc3RlbmVycykgbGlzdGVuZXIoZXZlbnQuZGF0YSk7Cgl9Owp9OwpjcmVhdGVIYW5kbGVyKG5l\
210
dyBCcm93c2VyTWVzc2FnZVBvcnQoKSwgcHJvY2VkdXJlcyk7CgovLyNlbmRyZWdpb24=\
211
`;
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc