XML 72 R32.htm IDEA: XBRL DOCUMENT
v3.24.1

Net Income (Loss) Per Share (Tables) | 12 Months Ended
--- | ---
Dec. 31, 2023
Earnings Per Share [Abstract] |
Summary of Earnings Per Share, Basic and Diluted | The following table sets forth the calculation of basic and diluted net income per share (in thousands, except per share data):
|  |  | Year Ended December 31,
|  |  |  |  | 2023 |  | 2022
Numerator: |  |  |  |  |  |  |
Net income (loss) from continuing operations - Basic and Diluted |  |  |  |  | $ | 7,784 |  |  | $ | 7,728 |
Impact of Series C preferred stock redemption |  |  |  |  | — |  |  | 2,046 |
Net income (loss) from continuing operations attributable to common stockholders - Basic and Diluted |  |  |  |  | 7,784 |  |  | 9,774 |
Net income (loss) from discontinued operations - Basic and Diluted |  |  |  |  | — |  |  | (381) |
Net income (loss) attributable to common shareholders - Basic and Diluted |  |  |  |  | $ | 7,784 |  |  | $ | 9,393 |
Denominator: |  |  |  |  |  |  |
Weighted-average common shares outstanding - Basic |  |  |  |  | 9,629 |  |  | 8,974 |
Effect of common share equivalents |  |  |  |  | 479 |  |  | 601 |
Weighted-average common shares outstanding - Diluted |  |  |  |  | 10,108 |  |  | 9,575 |
Net income (loss) per share: |  |  |  |  |  |  |
Basic - Continuing operations |  |  |  |  | $ | 0.81 |  |  | $ | 1.09 |
Basic - Discontinued operations |  |  |  |  | — |  | (0.04) |
Basic net income (loss) per share |  |  |  |  | $ | 0.81 |  |  | $ | 1.05 |
Diluted - Continuing operations |  |  |  |  | $ | 0.77 |  |  | $ | 1.02 |
Diluted - Discontinued operations |  |  |  |  | — |  | (0.04) |
Diluted net income (loss) per share |  |  |  |  | $ | 0.77 |  |  | $ | 0.98 |
Summary of Shares Equivalents Excluded from Dilutive Share Computation | The following common share equivalents have been excluded from the computation of diluted net income (loss) per share because their effect was anti-dilutive (in thousands):
|  |  | Year Ended December 31,
|  |  |  |  | 2023 |  | 2022
Restricted stock units |  |  |  |  | 2 |  |  | 6 |
Stock options |  |  |  |  | 29 |  |  | 35 |
Warrants |  |  |  |  | 46 |  |  | 89 |

X
- References No definition available. + Details
Name: | us-gaap_EarningsPerShareAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1 + Details
Name: | us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1 + Details
Name: | us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration