extract code and add unit tests #15873
| Job | Run time |
|---|---|
| 24m 59s | |
| 35m 59s | |
| 27m 34s | |
| 25m 46s | |
| 24m 51s | |
| 46m 43s | |
| 39m 23s | |
| 40m 7s | |
| 32m 51s | |
| 32m 57s | |
| 20m 25s | |
| 33m 37s | |
| 26m 58s | |
| 28m 27s | |
| 31m 13s | |
| 33m 41s | |
| 1h 4m 45s | |
| 9h 30m 16s |
| Job | Run time |
|---|---|
| 24m 59s | |
| 35m 59s | |
| 27m 34s | |
| 25m 46s | |
| 24m 51s | |
| 46m 43s | |
| 39m 23s | |
| 40m 7s | |
| 32m 51s | |
| 32m 57s | |
| 20m 25s | |
| 33m 37s | |
| 26m 58s | |
| 28m 27s | |
| 31m 13s | |
| 33m 41s | |
| 1h 4m 45s | |
| 9h 30m 16s |