Summary of Significant Accounting Policies (Tables)
|
12 Months Ended |
Dec. 31, 2022 |
Accounting Policies [Abstract] |
|
Schedule of Other Receivables |
|
|
|
|
|
|
|
|
|
|
|
As of |
|
|
|
December 31, 2022 |
|
|
December 31, 2021 |
|
Payroll tax withholding and exercise proceeds receivable |
|
$ |
273 |
|
|
$ |
8,477 |
|
Construction receivable |
|
|
6,199 |
|
|
|
5,574 |
|
Income tax receivable |
|
|
4,387 |
|
|
|
4,935 |
|
Insurance receivable |
|
|
2,627 |
|
|
|
2,594 |
|
Other |
|
|
1,696 |
|
|
|
1,216 |
|
Total other receivables |
|
$ |
15,182 |
|
|
$ |
22,796 |
|
|
Schedule of Inventory |
Inventory for the periods presented is as follows:
|
|
|
|
|
|
|
|
|
|
|
As of |
|
|
|
December 31, 2022 |
|
|
December 31, 2021 |
|
Chemical washing solutions |
|
$ |
9,357 |
|
|
$ |
6,406 |
|
Other |
|
|
— |
|
|
|
52 |
|
Total inventory, gross |
|
|
9,357 |
|
|
|
6,458 |
|
Reserve for obsolescence |
|
|
(183 |
) |
|
|
(124 |
) |
Total inventory, net |
|
$ |
9,174 |
|
|
$ |
6,334 |
|
|
Schedule of Composition of Revenue |
The following table summarizes the composition of the Company's net revenues for the periods presented:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Year Ended December 31, |
|
|
|
2022 |
|
|
2021 |
|
|
2020 |
|
Recognized over time |
|
$ |
593,067 |
|
|
$ |
486,580 |
|
|
$ |
339,836 |
|
Recognized at a point in time |
|
|
282,424 |
|
|
|
268,981 |
|
|
|
232,210 |
|
Other revenue |
|
|
1,015 |
|
|
|
2,796 |
|
|
|
2,895 |
|
Net revenues |
|
$ |
876,506 |
|
|
$ |
758,357 |
|
|
$ |
574,941 |
|
|
Schedule of Reconciliations of Numerators and Denominators of Basic and Diluted Net Income (Loss) Per Share |
Reconciliations of the numerators and denominators of the basic and diluted net income (loss) per share calculations for the periods presented are as follows:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Year Ended December 31, |
|
|
|
2022 |
|
|
2021 |
|
|
2020 |
|
Numerator: |
|
|
|
|
|
|
|
|
|
Net income (loss) |
|
$ |
112,900 |
|
|
$ |
(22,045 |
) |
|
$ |
60,403 |
|
|
|
|
|
|
|
|
|
|
|
Denominator: |
|
|
|
|
|
|
|
|
|
Weighted-average common shares outstanding - basic |
|
|
303,372,095 |
|
|
|
280,215,579 |
|
|
|
261,773,267 |
|
Effect of potentially dilutive securities: |
|
|
|
|
|
|
|
|
|
Stock options |
|
|
23,617,488 |
|
|
|
— |
|
|
|
14,147,100 |
|
Restricted stock units |
|
|
555,495 |
|
|
|
— |
|
|
|
— |
|
Employee stock purchase plan |
|
|
15,329 |
|
|
|
— |
|
|
|
— |
|
Weighted-average common shares outstanding - diluted |
|
|
327,560,407 |
|
|
|
280,215,579 |
|
|
|
275,920,367 |
|
|
|
|
|
|
|
|
|
|
|
Net income (loss) per share - basic |
|
$ |
0.37 |
|
|
$ |
(0.08 |
) |
|
$ |
0.23 |
|
Net income (loss) per share - diluted |
|
$ |
0.34 |
|
|
$ |
(0.08 |
) |
|
$ |
0.22 |
|
|
Schedule of Antidilutive Shares Excluded from Computation of Diluted Net Income (Loss) Per Share |
The following potentially dilutive shares were excluded from the computation of diluted net income (loss) per share for the periods presented because including them would have been antidilutive:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Year Ended December 31, |
|
|
|
2022 |
|
|
2021 |
|
|
2020 |
|
Stock options |
|
|
2,204,216 |
|
|
|
30,752,951 |
|
|
|
22,693 |
|
Restricted stock units |
|
|
62,140 |
|
|
|
1,683,077 |
|
|
|
— |
|
Employee stock purchase plan |
|
|
49,645 |
|
|
|
194,263 |
|
|
|
— |
|
|