Summary of Significant Accounting Policies (Tables)
|
6 Months Ended |
Jun. 30, 2024 |
Accounting Policies [Abstract] |
|
Schedule of Other Receivables |
Other receivables consisted of the following for the periods presented:
|
|
|
|
|
|
|
|
|
As of |
|
|
June 30, 2024 |
|
|
December 31, 2023 |
|
Construction receivable |
$ |
7,097 |
|
|
$ |
6,480 |
|
Income tax receivable |
|
1,500 |
|
|
|
3,051 |
|
Insurance receivable |
|
4,118 |
|
|
|
3,686 |
|
Employee retention credit receivable |
|
5,189 |
|
|
|
- |
|
Other |
|
1,539 |
|
|
|
1,497 |
|
Total other receivables |
|
19,443 |
|
|
|
14,714 |
|
|
Schedule of Inventory |
Inventory consisted of the following for the periods presented:
|
|
|
|
|
|
|
|
|
As of |
|
|
June 30, 2024 |
|
|
December 31, 2023 |
|
Chemical washing solutions |
$ |
5,979 |
|
|
$ |
9,135 |
|
Reserve for obsolescence |
|
(120 |
) |
|
|
(183 |
) |
Total inventory, net |
$ |
5,859 |
|
|
$ |
8,952 |
|
|
Schedule of Composition of Revenue |
The following table summarizes the composition of our net revenues for the periods presented:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Three Months Ended June 30, |
|
|
Six Months Ended June 30, |
|
|
2024 |
|
|
2023 |
|
|
2024 |
|
|
2023 |
|
Recognized over time |
$ |
184,082 |
|
|
$ |
164,733 |
|
|
$ |
360,341 |
|
|
$ |
321,624 |
|
Recognized at a point in time |
|
70,861 |
|
|
|
72,029 |
|
|
|
133,707 |
|
|
|
140,999 |
|
Other revenue |
|
100 |
|
|
|
132 |
|
|
|
178 |
|
|
|
231 |
|
Net revenues |
$ |
255,043 |
|
|
$ |
236,894 |
|
|
$ |
494,226 |
|
|
$ |
462,854 |
|
|
Schedule of Reconciliations of Numerators and Denominators of Basic and Diluted Net Income Per Share |
Reconciliations of the numerators and denominators of the basic and diluted net income per share calculations for the periods presented are as follows:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Three Months Ended June 30, |
|
|
Six Months Ended June 30, |
|
|
2024 |
|
|
2023 |
|
|
2024 |
|
|
2023 |
|
Numerator: |
|
|
|
|
|
|
|
|
|
|
|
Net income |
$ |
22,091 |
|
|
$ |
27,132 |
|
|
$ |
38,728 |
|
|
$ |
48,268 |
|
|
|
|
|
|
|
|
|
|
|
|
|
Denominator: |
|
|
|
|
|
|
|
|
|
|
|
Weighted-average common shares outstanding - basic |
|
319,415,156 |
|
|
|
309,314,858 |
|
|
|
317,626,972 |
|
|
|
308,308,972 |
|
Effect of potentially dilutive securities: |
|
|
|
|
|
|
|
|
|
|
|
Stock options |
|
7,509,205 |
|
|
|
18,363,467 |
|
|
|
10,097,192 |
|
|
|
19,081,022 |
|
Restricted stock units |
|
1,399,443 |
|
|
|
603,008 |
|
|
|
1,428,419 |
|
|
|
550,611 |
|
Employee stock purchase plan |
|
1,331 |
|
|
|
2,020 |
|
|
|
16,057 |
|
|
|
10,794 |
|
Weighted-average common shares outstanding - diluted |
|
328,325,135 |
|
|
|
328,283,353 |
|
|
|
329,168,640 |
|
|
|
327,951,399 |
|
|
|
|
|
|
|
|
|
|
|
|
|
Net income per share - basic |
$ |
0.07 |
|
|
$ |
0.09 |
|
|
$ |
0.12 |
|
|
$ |
0.16 |
|
Net income per share - diluted |
$ |
0.07 |
|
|
$ |
0.08 |
|
|
$ |
0.12 |
|
|
$ |
0.15 |
|
|
Schedule of Antidilutive Shares Excluded from Computation of Diluted Net Income Per Share |
The following potentially dilutive shares were excluded from the computation of diluted net income per share for the periods presented because including them would have been antidilutive:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Three Months Ended June 30, |
|
|
Six Months Ended June 30, |
|
|
2024 |
|
|
2023 |
|
|
2024 |
|
|
2023 |
|
Stock options |
|
4,153,264 |
|
|
|
3,555,410 |
|
|
|
3,909,744 |
|
|
|
3,116,583 |
|
Restricted stock units |
|
1,336,924 |
|
|
|
235,216 |
|
|
|
668,462 |
|
|
|
295,808 |
|
Employee stock purchase plan |
|
95,582 |
|
|
|
88,163 |
|
|
|
49,358 |
|
|
|
45,891 |
|
|