XML 30 R19.htm IDEA: XBRL DOCUMENT
v3.25.2

Net Income Per Share | 6 Months Ended
--- | ---
Jun. 30, 2025
Earnings Per Share [Abstract] |
Net Income Per Share | 13. Net Income Per Share Basic net income per share is computed on the basis of the weighted-average number of common shares outstanding during the period. Diluted net income per share is computed based upon the weighted-average number of common shares outstanding during the period plus the assumed issuance of common shares for all potentially dilutive securities. The net income used in the calculation of basic and diluted net income per share is as follows:
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three months ended June 30, | ​ | Six months ended June 30,
​ |  | 2025 |  | 2024 |  | 2025 |  | 2024
Net income | ​ | $ | 1,551,461 | ​ | $ | 815,660 | ​ | $ | 5,567,495 | ​ | $ | 2,322,556
​ In calculating the net income per share, basic and diluted, the following weighted-average shares were used:
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three months ended June 30, | ​ | Six months ended June 30,
​ |  | 2025 |  | 2024 |  | 2025 |  | 2024
Basic weighted-average number of shares outstanding | ​ | 22,017,310 | ​ | 21,921,752 | ​ | 22,013,062 | ​ | 21,957,980
Unvested time-based restricted shares |  | 185,005 |  | 107,723 |  | 142,567 |  | 29,162
Diluted weighted-average shares outstanding |  | 22,202,315 |  | 22,029,475 |  | 22,155,629 |  | 21,987,142
​ The Company excluded the following shares from the diluted EPS because their inclusion would have been anti-dilutive.
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three months ended June 30, | ​ | Six months ended June 30,
​ |  | 2025 |  | 2024 |  | 2025 |  | 2024
Anti-dilutive unvested time-based restricted shares | ​ | 367,421 | ​ | 492,463 | ​ | 411,203 | ​ | 512,389
​

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 The entire disclosure for earnings per share. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -Name Accounting Standards Codification -Publisher FASB -URI https://asc.fasb.org/260/tableOfContent Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-3 + Details
Name: | us-gaap_EarningsPerShareTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration