XML 53 R41.htm IDEA: XBRL DOCUMENT
v3.22.1

Capital Stock (Tables) | 12 Months Ended
--- | ---
Dec. 31, 2021
Equity [Abstract] |
Summary of Activities in Shares of Capital Stock | The following table summarizes the activity in shares of capital stock. Summary of Activities in Shares of Capital Stock
|  | Class A |  |  | Class C |
Outstanding shares at December 31, 2019 |  |  | 16,107,779 |  |  |  | 2,500,887 |
Exercise of stock options |  |  | 68,970 |  |  |  | 130,820 |
Stock dividends |  |  | 405,210 |  |  |  | 61,720 |
Conversion of Class C to Class A |  |  | 13,824 |  |  |  | (13,824 | )
Outstanding shares at December 31, 2020 |  |  | 16,595,783 |  |  |  | 2,679,603 |
Exercise of stock options |  |  | 160,282 |  |  |  | 104,656 |
Stock dividends |  |  | 837,410 |  |  |  | 131,553 |
Conversion of Class C to Class A |  |  | 49,247 |  |  |  | (49,247 | )
Outstanding shares at December 31, 2021 |  |  | 17,642,722 |  |  |  | 2,866,565 |
Schedule of Earnings Per Share, Basic and Diluted | Earnings per share amounts have been retroactively adjusted for the effect of annual stock dividends. In accordance with GAAP, the basic and diluted earnings per share amounts were calculated as follows: Schedule of Earnings Per Share, Basic and Diluted
|  | 2021 |  |  | 2020 |
|  | Years Ended December 31 |
|  | 2021 |  |  | 2020 |
Numerator: |  |  |  |  |  |
Net earnings |  | $ | 39,518,990 |  |  | $ | 55,596,613 |
Denominator: |  |  |  |  |  |  |  |
Denominator for basic earnings per share-weighted-average shares |  |  | 20,154,878 |  |  |  | 19,788,984 |
Effect of dilutive securities |  |  |  |  |  |  |  |
Employee stock options |  |  | 774,206 |  |  |  | 465,423 |
Dilutive potential common shares |  |  | 774,206 |  |  |  | 465,423 |
Denominator for diluted earnings per share-adjusted weighted-average |  |  |  |  |  |  |  |
shares and assumed conversions |  |  | 20,929,084 |  |  |  | 20,254,407 |
Basic earnings per share |  | $ | 1.96 |  |  | $ | 2.81 |
Diluted earnings per share |  | $ | 1.89 |  |  | $ | 2.74 |

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

X
- Definition Tabular disclosure of information related to converting stock into another financial instrument(s) in a noncash (or part noncash) transaction. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 50 -Paragraph 4 -URI http://asc.fasb.org/extlink&oid=123431023&loc=d3e4313-108586 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 50 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=123431023&loc=d3e4304-108586 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=123431023&loc=d3e4332-108586 + Details
Name: | us-gaap_ScheduleOfConversionsOfStockTextBlock
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 -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257 + Details
Name: | us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration