2024 Q1 Form 10-K Financial Statement

#000155837024004361 Filed on March 29, 2024

View on sec.gov

Income Statement

Concept 2024 Q1 2023 Q4 2023
Revenue $7.599M $14.29M $43.60M
YoY Change -30.92% 12.7% -54.02%
Cost Of Revenue $5.698M $12.75M $34.49M
YoY Change -29.92% 52.2% -48.19%
Gross Profit $1.901M $1.541M $9.108M
YoY Change -33.75% -64.19% -67.76%
Gross Profit Margin 25.01% 10.78% 20.89%
Selling, General & Admin $4.745M $4.158M $20.01M
YoY Change -13.42% -65.38% -29.97%
% of Gross Profit 249.6% 269.89% 219.75%
Research & Development $142.3K $161.7K $581.2K
YoY Change 9.64% 36.98% 10.55%
% of Gross Profit 7.48% 10.5% 6.38%
Depreciation & Amortization $1.889M $1.697M $7.527M
YoY Change -2.55% 4.89% 63.53%
% of Gross Profit 99.4% 110.16% 82.65%
Operating Expenses $4.887M $4.320M $20.60M
YoY Change -12.89% -64.38% -29.24%
Operating Profit -$2.986M -$2.779M -$11.49M
YoY Change 8.97% -64.49% 1246.84%
Interest Expense $33.48K $991.3K $152.2K
YoY Change -23.12% -69.91% -10.83%
% of Operating Profit
Other Income/Expense, Net $1.485M $1.744M $6.224M
YoY Change -4.7% -7.15% 62.39%
Pretax Income $515.0K -$43.71K -$8.916M
YoY Change -57.85% -98.35% -272.71%
Income Tax $85.59K $29.23K -$1.905M
% Of Pretax Income 16.62%
Net Earnings $429.4K -$130.6K -$7.011M
YoY Change -56.67% -96.99% -238.05%
Net Earnings / Revenue 5.65% -0.91% -16.08%
Basic Earnings Per Share $0.01 -$0.24
Diluted Earnings Per Share $0.01 $0.00 -$0.24
COMMON SHARES
Basic Shares Outstanding 29.94M 29.94M 29.94M
Diluted Shares Outstanding 29.95M 29.94M

Balance Sheet

Concept 2024 Q1 2023 Q4 2023
SHORT-TERM ASSETS
Cash & Short-Term Investments $46.64M $47.29M $47.29M
YoY Change -1.58% -4.23% -4.23%
Cash & Equivalents $10.01M $12.67M $12.67M
Short-Term Investments $36.63M $34.62M $34.62M
Other Short-Term Assets $1.004M $952.7K $952.7K
YoY Change -44.07% -24.52% -24.78%
Inventory $19.49M $17.58M $17.58M
Prepaid Expenses
Receivables $7.425M $10.67M $10.67M
Other Receivables $1.155M $1.155M $1.155M
Total Short-Term Assets $75.71M $77.65M $77.65M
YoY Change -14.46% -12.57% -12.57%
LONG-TERM ASSETS
Property, Plant & Equipment $91.82M $93.48M $93.48M
YoY Change -6.96% -6.66% -6.66%
Goodwill
YoY Change
Intangibles
YoY Change
Long-Term Investments
YoY Change
Other Assets $8.445M $8.544M $8.544M
YoY Change 30.71% 27.46% 27.46%
Total Long-Term Assets $100.3M $102.0M $102.0M
YoY Change -4.64% -4.52% -4.52%
TOTAL ASSETS
Total Short-Term Assets $75.71M $77.65M $77.65M
Total Long-Term Assets $100.3M $102.0M $102.0M
Total Assets $176.0M $179.7M $179.7M
YoY Change -9.13% -8.17% -8.17%
SHORT-TERM LIABILITIES
YoY Change
Accounts Payable $2.594M $4.779M $4.779M
YoY Change -51.7% -25.38% -25.38%
Accrued Expenses $2.064M $2.671M $2.671M
YoY Change -29.18% -24.29% -24.29%
Deferred Revenue $485.3K $201.5K
YoY Change 108.18% -53.78%
Short-Term Debt $0.00 $0.00 $0.00
YoY Change
Long-Term Debt Due $311.1K $304.0K $304.0K
YoY Change 8.06% 6.31% 6.31%
Total Short-Term Liabilities $6.874M $9.377M $9.378M
YoY Change -33.18% -22.73% -22.73%
LONG-TERM LIABILITIES
Long-Term Debt $1.153M $1.234M $1.234M
YoY Change -21.1% -19.56% -19.56%
Other Long-Term Liabilities $68.29M $69.77M $69.77M
YoY Change -8.26% -7.54% -7.54%
Total Long-Term Liabilities $69.44M $71.01M $71.01M
YoY Change -8.51% -7.77% -7.77%
TOTAL LIABILITIES
Total Short-Term Liabilities $6.874M $9.377M $9.378M
Total Long-Term Liabilities $69.44M $71.01M $71.01M
Total Liabilities $76.32M $80.38M $80.38M
YoY Change -11.45% -9.81% -9.81%
SHAREHOLDERS EQUITY
Retained Earnings $39.16M $38.79M
YoY Change -16.62% -15.74%
Common Stock $0.00 $0.00
YoY Change
Preferred Stock $73.16M $73.16M
YoY Change -0.01% -0.01%
Treasury Stock (at cost)
YoY Change
Treasury Stock Shares
Shareholders Equity $99.66M $99.29M $99.29M
YoY Change
Total Liabilities & Shareholders Equity $176.0M $179.7M $179.7M
YoY Change -9.13% -8.17% -8.17%

Cashflow Statement

Concept 2024 Q1 2023 Q4 2023
OPERATING ACTIVITIES
Net Income $429.4K -$130.6K -$7.011M
YoY Change -56.67% -96.99% -238.05%
Depreciation, Depletion And Amortization $1.889M $1.697M $7.527M
YoY Change -2.55% 4.89% 63.53%
Cash From Operating Activities -$2.022M $1.897M $2.767M
YoY Change -45.33% -81.38% -83.5%
INVESTING ACTIVITIES
Capital Expenditures $226.4K $153.0K $853.0K
YoY Change -51.58% -94.81% -94.93%
Acquisitions
YoY Change
Other Investing Activities -$276.3K -$189.3K -$9.909M
YoY Change -96.97% 86.8% -31.05%
Cash From Investing Activities -$502.7K -$352.3K -$10.76M
YoY Change -94.76% -88.45% -65.51%
FINANCING ACTIVITIES
Cash Dividend Paid
YoY Change
Common Stock Issuance & Retirement, Net
YoY Change
Debt Paid & Issued, Net $73.65K $281.9K
YoY Change 4.47% -0.73%
Cash From Financing Activities -131.3K -138.4K 941.6K
YoY Change 128.65% -83.35% -81.14%
NET CHANGE
Cash From Operating Activities -2.022M 1.897M 2.767M
Cash From Investing Activities -502.7K -352.3K -10.76M
Cash From Financing Activities -131.3K -138.4K 941.6K
Net Change In Cash -2.656M 1.406M -7.054M
YoY Change -80.12% -77.69% -25.29%
FREE CASH FLOW
Cash From Operating Activities -$2.022M $1.897M $2.767M
Capital Expenditures $226.4K $153.0K $853.0K
Free Cash Flow -$2.249M $1.744M $1.914M
YoY Change -46.03% -75.9% -3189.43%

Facts In Submission

Frame Concept Type Concept / XBRL Key Value Unit
CY2023Q4 us-gaap Commitments And Contingencies
CommitmentsAndContingencies
CY2022Q4 us-gaap Commitments And Contingencies
CommitmentsAndContingencies
CY2023 dei Entity Central Index Key
EntityCentralIndexKey
0000946563
CY2023 dei Document Fiscal Year Focus
DocumentFiscalYearFocus
2023
CY2023 dei Document Fiscal Period Focus
DocumentFiscalPeriodFocus
FY
CY2023 dei Amendment Flag
AmendmentFlag
false
CY2023Q4 us-gaap Common Stock Value
CommonStockValue
CY2022Q4 us-gaap Common Stock Value
CommonStockValue
CY2020Q3 rvp Technology Investment Agreement Term
TechnologyInvestmentAgreementTerm
P10Y
CY2023 dei Document Type
DocumentType
10-K
CY2023 dei Document Annual Report
DocumentAnnualReport
true
CY2023 dei Document Period End Date
DocumentPeriodEndDate
2023-12-31
CY2023 dei Current Fiscal Year End Date
CurrentFiscalYearEndDate
--12-31
CY2023 dei Document Transition Report
DocumentTransitionReport
false
CY2023 dei Entity File Number
EntityFileNumber
001-16465
CY2023 dei Entity Registrant Name
EntityRegistrantName
Retractable Technologies, Inc
CY2023 dei Entity Address State Or Province
EntityAddressStateOrProvince
TX
CY2023 dei Entity Tax Identification Number
EntityTaxIdentificationNumber
75-2599762
CY2023 dei Entity Address Address Line1
EntityAddressAddressLine1
511 Lobo Lane
CY2023 dei Entity Address City Or Town
EntityAddressCityOrTown
Little Elm
CY2023 dei Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
TX
CY2023 dei Entity Address Postal Zip Code
EntityAddressPostalZipCode
75068-5295
CY2023 dei City Area Code
CityAreaCode
972
CY2023 dei Local Phone Number
LocalPhoneNumber
294-1010
CY2023Q4 us-gaap Accrued Royalties Current
AccruedRoyaltiesCurrent
1376555
CY2022Q4 us-gaap Accrued Royalties Current
AccruedRoyaltiesCurrent
973701
CY2023 dei Security12b Title
Security12bTitle
Common Stock
CY2023 dei Trading Symbol
TradingSymbol
RVP
CY2023 dei Security Exchange Name
SecurityExchangeName
NYSEAMER
CY2023 dei Entity Well Known Seasoned Issuer
EntityWellKnownSeasonedIssuer
No
CY2023 dei Entity Voluntary Filers
EntityVoluntaryFilers
No
CY2023 dei Entity Current Reporting Status
EntityCurrentReportingStatus
Yes
CY2023 dei Entity Interactive Data Current
EntityInteractiveDataCurrent
Yes
CY2023 dei Entity Filer Category
EntityFilerCategory
Non-accelerated Filer
CY2023 dei Entity Small Business
EntitySmallBusiness
true
CY2023 dei Entity Emerging Growth Company
EntityEmergingGrowthCompany
false
CY2023 dei Icfr Auditor Attestation Flag
IcfrAuditorAttestationFlag
false
CY2023 dei Document Fin Stmt Error Correction Flag
DocumentFinStmtErrorCorrectionFlag
false
CY2023 dei Entity Shell Company
EntityShellCompany
false
CY2023Q2 dei Entity Public Float
EntityPublicFloat
15000000
CY2024Q1 dei Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
29937159
CY2023 dei Auditor Name
AuditorName
Moss Adams LLP
CY2023 dei Auditor Location
AuditorLocation
Dallas, TX
CY2023 dei Auditor Firm
AuditorFirmId
659
CY2023Q4 us-gaap Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
12667550
CY2022Q4 us-gaap Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
19721345
CY2023Q4 us-gaap Accounts Receivable Net Current
AccountsReceivableNetCurrent
10671721
CY2022Q4 us-gaap Accounts Receivable Net Current
AccountsReceivableNetCurrent
4835119
CY2022Q4 us-gaap Receivables Long Term Contracts Or Programs
ReceivablesLongTermContractsOrPrograms
2025413
CY2023Q4 rvp Debt Securities Trading And Equity Securities Fv Ni Current
DebtSecuritiesTradingAndEquitySecuritiesFvNiCurrent
34621213
CY2022Q4 rvp Debt Securities Trading And Equity Securities Fv Ni Current
DebtSecuritiesTradingAndEquitySecuritiesFvNiCurrent
29657314
CY2023Q4 us-gaap Inventory Net
InventoryNet
17581368
CY2022Q4 us-gaap Inventory Net
InventoryNet
20684168
CY2023Q4 us-gaap Income Taxes Receivable
IncomeTaxesReceivable
1155077
CY2022Q4 us-gaap Income Taxes Receivable
IncomeTaxesReceivable
10619835
CY2023Q4 us-gaap Other Assets Current
OtherAssetsCurrent
952668
CY2022Q4 us-gaap Other Assets Current
OtherAssetsCurrent
1266516
CY2023Q4 us-gaap Assets Current
AssetsCurrent
77649597
CY2022Q4 us-gaap Assets Current
AssetsCurrent
88809710
CY2023Q4 us-gaap Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
93478521
CY2022Q4 us-gaap Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
100152768
CY2023Q4 us-gaap Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
8392030
CY2022Q4 us-gaap Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
6518663
CY2023Q4 us-gaap Other Assets
OtherAssets
152064
CY2022Q4 us-gaap Other Assets
OtherAssets
184524
CY2023Q4 us-gaap Assets
Assets
179672212
CY2022Q4 us-gaap Assets
Assets
195665665
CY2023Q4 us-gaap Accounts Payable Current
AccountsPayableCurrent
4779035
CY2022Q4 us-gaap Accounts Payable Current
AccountsPayableCurrent
6404925
CY2023Q4 us-gaap Long Term Debt Current
LongTermDebtCurrent
303991
CY2022Q4 us-gaap Long Term Debt Current
LongTermDebtCurrent
285954
CY2023Q4 us-gaap Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
865105
CY2022Q4 us-gaap Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
997530
CY2023Q4 us-gaap Dividends Payable Current
DividendsPayableCurrent
1417437
CY2022Q4 us-gaap Dividends Payable Current
DividendsPayableCurrent
1417937
CY2023Q4 us-gaap Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
630571
CY2022Q4 us-gaap Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
1992144
CY2023Q4 us-gaap Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
4802
CY2022Q4 us-gaap Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
63631
CY2023Q4 us-gaap Liabilities Current
LiabilitiesCurrent
9377496
CY2022Q4 us-gaap Liabilities Current
LiabilitiesCurrent
12135822
CY2023Q4 us-gaap Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
69773538
CY2022Q4 us-gaap Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
75459612
CY2023Q4 us-gaap Long Term Debt Noncurrent
LongTermDebtNoncurrent
1233519
CY2022Q4 us-gaap Long Term Debt Noncurrent
LongTermDebtNoncurrent
1533422
CY2023Q4 us-gaap Liabilities
Liabilities
80384553
CY2022Q4 us-gaap Liabilities
Liabilities
89128856
CY2022Q4 us-gaap Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
1
CY2023Q4 us-gaap Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
1
CY2022Q4 us-gaap Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
0
CY2023Q4 us-gaap Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
0
CY2022Q4 us-gaap Common Stock Shares Authorized
CommonStockSharesAuthorized
100000000
CY2023Q4 us-gaap Common Stock Shares Authorized
CommonStockSharesAuthorized
100000000
CY2022Q4 us-gaap Common Stock Shares Issued
CommonStockSharesIssued
34024304
CY2023Q4 us-gaap Common Stock Shares Issued
CommonStockSharesIssued
34024304
CY2022Q4 us-gaap Common Stock Shares Outstanding
CommonStockSharesOutstanding
29937159
CY2023Q4 us-gaap Common Stock Shares Outstanding
CommonStockSharesOutstanding
29937159
CY2023Q4 us-gaap Additional Paid In Capital Preferred Stock
AdditionalPaidInCapitalPreferredStock
73160333
CY2022Q4 us-gaap Additional Paid In Capital Preferred Stock
AdditionalPaidInCapitalPreferredStock
73164501
CY2023Q4 us-gaap Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
38785559
CY2022Q4 us-gaap Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
46028541
CY2022Q4 us-gaap Treasury Stock Common Shares
TreasuryStockCommonShares
4087145
CY2023Q4 us-gaap Treasury Stock Common Shares
TreasuryStockCommonShares
4087145
CY2023Q4 us-gaap Treasury Stock Common Value
TreasuryStockCommonValue
12888678
CY2022Q4 us-gaap Treasury Stock Common Value
TreasuryStockCommonValue
12888678
CY2023Q4 us-gaap Stockholders Equity
StockholdersEquity
99287659
CY2022Q4 us-gaap Stockholders Equity
StockholdersEquity
106536809
CY2023Q4 us-gaap Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
179672212
CY2022Q4 us-gaap Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
195665665
CY2023 us-gaap Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
43596926
CY2022 us-gaap Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
94818938
CY2021 us-gaap Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
188382454
CY2023 us-gaap Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
34489115
CY2022 us-gaap Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
66565655
CY2021 us-gaap Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
93029933
CY2023 us-gaap Gross Profit
GrossProfit
9107811
CY2022 us-gaap Gross Profit
GrossProfit
28253283
CY2021 us-gaap Gross Profit
GrossProfit
95352521
CY2023 us-gaap Selling And Marketing Expense
SellingAndMarketingExpense
5706483
CY2022 us-gaap Selling And Marketing Expense
SellingAndMarketingExpense
4544052
CY2021 us-gaap Selling And Marketing Expense
SellingAndMarketingExpense
4477651
CY2023 us-gaap Research And Development Expense
ResearchAndDevelopmentExpense
581172
CY2022 us-gaap Research And Development Expense
ResearchAndDevelopmentExpense
525727
CY2021 us-gaap Research And Development Expense
ResearchAndDevelopmentExpense
901381
CY2023 us-gaap General And Administrative Expense
GeneralAndAdministrativeExpense
14308365
CY2022 us-gaap General And Administrative Expense
GeneralAndAdministrativeExpense
24036480
CY2021 us-gaap General And Administrative Expense
GeneralAndAdministrativeExpense
17378301
CY2023 us-gaap Operating Expenses
OperatingExpenses
20596020
CY2022 us-gaap Operating Expenses
OperatingExpenses
29106259
CY2021 us-gaap Operating Expenses
OperatingExpenses
22757333
CY2023 us-gaap Operating Income Loss
OperatingIncomeLoss
-11488209
CY2022 us-gaap Operating Income Loss
OperatingIncomeLoss
-852976
CY2021 us-gaap Operating Income Loss
OperatingIncomeLoss
72595188
CY2021 us-gaap Gains Losses On Extinguishment Of Debt
GainsLossesOnExtinguishmentOfDebt
1377652
CY2023 rvp Other Income Technology Agreement
OtherIncomeTechnologyAgreement
6223891
CY2022 rvp Other Income Technology Agreement
OtherIncomeTechnologyAgreement
3832747
CY2021 rvp Other Income Technology Agreement
OtherIncomeTechnologyAgreement
425158
CY2023 us-gaap Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
-10521166
CY2022 us-gaap Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
2343359
CY2021 us-gaap Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
513529
CY2023 us-gaap Equity Securities Fv Ni Realized Gain Loss
EquitySecuritiesFvNiRealizedGainLoss
5574792
CY2023 rvp Interest And Other Income Loss
InterestAndOtherIncomeLoss
1446661
CY2022 rvp Interest And Other Income Loss
InterestAndOtherIncomeLoss
9948
CY2021 rvp Interest And Other Income Loss
InterestAndOtherIncomeLoss
266467
CY2023 us-gaap Interest Expense
InterestExpense
152166
CY2022 us-gaap Interest Expense
InterestExpense
170651
CY2021 us-gaap Interest Expense
InterestExpense
227183
CY2023 us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
-8916197
CY2022 us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
5162427
CY2021 us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
74950811
CY2023 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
-1905161
CY2022 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
83870
CY2021 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
18886570
CY2023 us-gaap Net Income Loss
NetIncomeLoss
-7011036
CY2022 us-gaap Net Income Loss
NetIncomeLoss
5078557
CY2021 us-gaap Net Income Loss
NetIncomeLoss
56064241
CY2023 us-gaap Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
231946
CY2022 us-gaap Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
232444
CY2021 us-gaap Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
241703
CY2023 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
-7242982
CY2022 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
4846113
CY2021 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
55822538
CY2023 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
-0.24
CY2022 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
0.15
CY2021 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
1.65
CY2023 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
-0.24
CY2022 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
0.15
CY2021 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
1.63
CY2023 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
29937159
CY2022 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
32896348
CY2021 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
33870819
CY2023 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
29937159
CY2022 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
32961945
CY2021 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
34244699
CY2020Q4 us-gaap Stockholders Equity
StockholdersEquity
49880125
CY2021 us-gaap Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
48600
CY2021 us-gaap Dividends Preferred Stock
DividendsPreferredStock
5213591
CY2021 us-gaap Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
3660387
CY2021 us-gaap Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
5270501
CY2021 us-gaap Net Income Loss
NetIncomeLoss
56064241
CY2021Q4 us-gaap Stockholders Equity
StockholdersEquity
99169261
CY2022 us-gaap Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
13800
CY2022 us-gaap Dividends Preferred Stock
DividendsPreferredStock
232445
CY2022 us-gaap Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
10125813
CY2022 us-gaap Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
7618177
CY2022 us-gaap Net Income Loss
NetIncomeLoss
5078557
CY2022Q4 us-gaap Stockholders Equity
StockholdersEquity
106536809
CY2023 us-gaap Stock Redeemed Or Called During Period Value
StockRedeemedOrCalledDuringPeriodValue
6168
CY2023 us-gaap Dividends Preferred Stock
DividendsPreferredStock
231946
CY2023 us-gaap Net Income Loss
NetIncomeLoss
-7011036
CY2023Q4 us-gaap Stockholders Equity
StockholdersEquity
99287659
CY2023 us-gaap Profit Loss
ProfitLoss
-7011036
CY2022 us-gaap Profit Loss
ProfitLoss
5078557
CY2021 us-gaap Profit Loss
ProfitLoss
56064241
CY2023 us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
7527227
CY2022 us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
4602961
CY2021 us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
1257417
CY2023 us-gaap Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
-10521166
CY2022 us-gaap Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
2343359
CY2021 us-gaap Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
513529
CY2023 us-gaap Equity Securities Fv Ni Realized Gain Loss
EquitySecuritiesFvNiRealizedGainLoss
5574792
CY2022 us-gaap Equity Securities Fv Ni Realized Gain Loss
EquitySecuritiesFvNiRealizedGainLoss
-327926
CY2023 us-gaap Accretion Expense
AccretionExpense
9157
CY2022 us-gaap Accretion Expense
AccretionExpense
60115
CY2021 us-gaap Accretion Expense
AccretionExpense
109019
CY2023 us-gaap Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
-970
CY2022 us-gaap Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
-159
CY2023 us-gaap Deferred Income Taxes And Tax Credits
DeferredIncomeTaxesAndTaxCredits
-1873367
CY2022 us-gaap Deferred Income Taxes And Tax Credits
DeferredIncomeTaxesAndTaxCredits
7347171
CY2021 us-gaap Deferred Income Taxes And Tax Credits
DeferredIncomeTaxesAndTaxCredits
-9234628
CY2023 us-gaap Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
626940
CY2022 us-gaap Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
322991
CY2021 us-gaap Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
150000
CY2022 us-gaap Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
10125813
CY2021 us-gaap Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
3660387
CY2023 us-gaap Inventory Write Down
InventoryWriteDown
175355
CY2023 us-gaap Other Noncash Income
OtherNoncashIncome
6223891
CY2022 us-gaap Other Noncash Income
OtherNoncashIncome
3832747
CY2021 us-gaap Gains Losses On Extinguishment Of Debt
GainsLossesOnExtinguishmentOfDebt
1377652
CY2023 us-gaap Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
6463542
CY2022 us-gaap Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
-29701396
CY2021 us-gaap Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
13877663
CY2023 us-gaap Increase Decrease In Inventories
IncreaseDecreaseInInventories
-2927445
CY2022 us-gaap Increase Decrease In Inventories
IncreaseDecreaseInInventories
94249
CY2021 us-gaap Increase Decrease In Inventories
IncreaseDecreaseInInventories
10355273
CY2023 us-gaap Increase Decrease In Other Current Assets
IncreaseDecreaseInOtherCurrentAssets
-313848
CY2022 us-gaap Increase Decrease In Other Current Assets
IncreaseDecreaseInOtherCurrentAssets
564496
CY2021 us-gaap Increase Decrease In Other Current Assets
IncreaseDecreaseInOtherCurrentAssets
17652
CY2023 us-gaap Increase Decrease In Income Taxes Receivable
IncreaseDecreaseInIncomeTaxesReceivable
-9464758
CY2022 us-gaap Increase Decrease In Income Taxes Receivable
IncreaseDecreaseInIncomeTaxesReceivable
10619886
CY2023 rvp Increase Decrease In Other Operating Assets Excluding Other Current Assets
IncreaseDecreaseInOtherOperatingAssetsExcludingOtherCurrentAssets
-32460
CY2022 rvp Increase Decrease In Other Operating Assets Excluding Other Current Assets
IncreaseDecreaseInOtherOperatingAssetsExcludingOtherCurrentAssets
178850
CY2021 rvp Increase Decrease In Other Operating Assets Excluding Other Current Assets
IncreaseDecreaseInOtherOperatingAssetsExcludingOtherCurrentAssets
-38892
CY2023 us-gaap Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
-1625890
CY2022 us-gaap Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
-13999647
CY2021 us-gaap Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
4148128
CY2023 us-gaap Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
807
CY2022 us-gaap Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
-4269163
CY2021 us-gaap Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
2147705
CY2023 us-gaap Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
-58827
CY2022 us-gaap Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
-4896246
CY2021 us-gaap Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
594107
CY2023 us-gaap Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
2766848
CY2022 us-gaap Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
16768128
CY2021 us-gaap Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
32793499
CY2023 us-gaap Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
852979
CY2022 us-gaap Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
16830077
CY2021 us-gaap Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
58366563
CY2023 us-gaap Payments To Acquire Investments
PaymentsToAcquireInvestments
68481490
CY2022 us-gaap Payments To Acquire Investments
PaymentsToAcquireInvestments
18135191
CY2021 us-gaap Payments To Acquire Investments
PaymentsToAcquireInvestments
4748624
CY2023 us-gaap Proceeds From Sale Maturity And Collections Of Investments
ProceedsFromSaleMaturityAndCollectionsOfInvestments
58572186
CY2022 us-gaap Proceeds From Sale Maturity And Collections Of Investments
ProceedsFromSaleMaturityAndCollectionsOfInvestments
3762454
CY2021 us-gaap Proceeds From Sale Maturity And Collections Of Investments
ProceedsFromSaleMaturityAndCollectionsOfInvestments
75000
CY2023 us-gaap Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
-10762283
CY2022 us-gaap Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
-31202814
CY2021 us-gaap Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
-63040187
CY2023 us-gaap Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
281866
CY2022 us-gaap Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
283933
CY2021 us-gaap Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
274791
CY2023 rvp Proceeds From Technology Investment Agreement
ProceedsFromTechnologyInvestmentAgreement
2563229
CY2022 rvp Proceeds From Technology Investment Agreement
ProceedsFromTechnologyInvestmentAgreement
14235417
CY2021 rvp Proceeds From Technology Investment Agreement
ProceedsFromTechnologyInvestmentAgreement
52366282
CY2022 us-gaap Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
13800
CY2021 us-gaap Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
48600
CY2021 rvp Payment Of Preferred Stock Redemption Price Payable
PaymentOfPreferredStockRedemptionPricePayable
101250
CY2023 us-gaap Payments For Repurchase Of Preferred Stock And Preference Stock
PaymentsForRepurchaseOfPreferredStockAndPreferenceStock
1101110
CY2022 us-gaap Payments For Repurchase Of Preferred Stock And Preference Stock
PaymentsForRepurchaseOfPreferredStockAndPreferenceStock
1101110
CY2021 us-gaap Payments For Repurchase Of Preferred Stock And Preference Stock
PaymentsForRepurchaseOfPreferredStockAndPreferenceStock
1101110
CY2023 us-gaap Payments Of Dividends Preferred Stock And Preference Stock
PaymentsOfDividendsPreferredStockAndPreferenceStock
232445
CY2022 us-gaap Payments Of Dividends Preferred Stock And Preference Stock
PaymentsOfDividendsPreferredStockAndPreferenceStock
252879
CY2021 us-gaap Payments Of Dividends Preferred Stock And Preference Stock
PaymentsOfDividendsPreferredStockAndPreferenceStock
3824311
CY2023 us-gaap Payments For Repurchase Of Convertible Preferred Stock
PaymentsForRepurchaseOfConvertiblePreferredStock
6168
CY2022 us-gaap Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
7618177
CY2021 us-gaap Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
5270501
CY2023 us-gaap Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
941640
CY2022 us-gaap Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
4993118
CY2021 us-gaap Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
41842919
CY2023 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
-7053795
CY2022 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
-9441568
CY2021 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
11596231
CY2022Q4 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
19721345
CY2021Q4 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
29162913
CY2020Q4 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
17566682
CY2023Q4 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
12667550
CY2022Q4 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
19721345
CY2021Q4 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
29162913
CY2023 us-gaap Interest Paid Net
InterestPaidNet
161322
CY2022 us-gaap Interest Paid Net
InterestPaidNet
110537
CY2021 us-gaap Interest Paid Net
InterestPaidNet
118163
CY2023 us-gaap Income Taxes Paid Net
IncomeTaxesPaidNet
-9747329
CY2022 us-gaap Income Taxes Paid Net
IncomeTaxesPaidNet
12323857
CY2021 us-gaap Income Taxes Paid Net
IncomeTaxesPaidNet
27124342
CY2023 rvp Preferred Dividends Declared Not Paid In Noncash Investing And Financing Activities
PreferredDividendsDeclaredNotPaidInNoncashInvestingAndFinancingActivities
1417437
CY2022 rvp Preferred Dividends Declared Not Paid In Noncash Investing And Financing Activities
PreferredDividendsDeclaredNotPaidInNoncashInvestingAndFinancingActivities
1417937
CY2021 rvp Preferred Dividends Declared Not Paid In Noncash Investing And Financing Activities
PreferredDividendsDeclaredNotPaidInNoncashInvestingAndFinancingActivities
1438371
CY2021 us-gaap Conversion Of Stock Amount Issued1
ConversionOfStockAmountIssued1
30500
CY2022 rvp Amounts Receivable Under Technology Investment Agreement
AmountsReceivableUnderTechnologyInvestmentAgreement
2025413
CY2021 rvp Amounts Receivable Under Technology Investment Agreement
AmountsReceivableUnderTechnologyInvestmentAgreement
5924136
CY2023 rvp Redemption Price Payable In Noncash Investing And Financing Activities
RedemptionPricePayableInNoncashInvestingAndFinancingActivities
6000
CY2022 rvp Redemption Price Payable In Noncash Investing And Financing Activities
RedemptionPricePayableInNoncashInvestingAndFinancingActivities
6000
CY2021 rvp Redemption Price Payable In Noncash Investing And Financing Activities
RedemptionPricePayableInNoncashInvestingAndFinancingActivities
6000
CY2022 rvp Preferred Stock Repurchase In Noncash Investing And Financing Activities
PreferredStockRepurchaseInNoncashInvestingAndFinancingActivities
1091953
CY2021 rvp Preferred Stock Repurchase In Noncash Investing And Financing Activities
PreferredStockRepurchaseInNoncashInvestingAndFinancingActivities
2132948
CY2023 us-gaap Use Of Estimates
UseOfEstimates
<p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 18pt;">Accounting estimates</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 18pt;">The preparation of financial statements in conformity with U.S. generally accepted accounting principles (“GAAP”) requires Management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period.  Actual results could differ significantly from those estimates. The amount reported as a contractual allowance for rebates involves examination of past historical trends related to sales to customers and the related credits issued once contractual obligations of the customers have been met. The establishment of a liability for future claims of rebates against sales in the current period requires that the Company has an understanding of the relevant sales with respect to product categories, sales distribution channels, and the likelihood of contractual obligations being satisfied.</p>
CY2023 rvp Number Of Products Consigned To Customer
NumberOfProductsConsignedToCustomer
0
CY2023Q4 us-gaap Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
890541
CY2022Q4 us-gaap Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
675208
CY2022Q4 us-gaap Inventory Adjustments
InventoryAdjustments
0
CY2023Q4 us-gaap Inventory Valuation Reserves
InventoryValuationReserves
473000
CY2022Q4 us-gaap Inventory Valuation Reserves
InventoryValuationReserves
297000
CY2023 us-gaap Concentration Risk Credit Risk
ConcentrationRiskCreditRisk
<p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 18pt;">Concentration risks</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 18pt;">The Company’s financial instruments exposed to concentrations of credit risk consist primarily of cash, cash equivalents, certificates of deposit, exchange-traded and closed-end funds, mutual funds, equity securities, and accounts receivable. Cash balances, some of which exceed federally insured limits, are maintained in financial institutions; however, Management believes the institutions are of high credit quality. The majority of accounts receivable are due from companies that are well-established entities.  The Company assesses market risk in equity securities through consultation with its outside investment advisors.  Management is responsible for directing investment activity based on current economic conditions. Management considers any exposure from concentrations of credit risks to be limited. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">The following table reflects our significant customers in 2023, 2022, and 2021:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:45.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:45.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:49.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Years Ended December 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:45.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:45.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Number of significant customers</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:45.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Aggregate dollar amount of net sales to significant customers</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">25.9 million</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">66.4 million</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">113.7 million</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:45.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Percentage of net sales to significant customers</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">61.3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">70.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">60.3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 18pt;">The Company manufactures some of its products in Little Elm, Texas, as well as utilizing manufacturers in China.  The Company obtained roughly 88.4% of its products in 2023 from its Chinese manufacturers.  Purchases from Chinese manufacturers aggregated 91.6% and 92% of products in 2022 and 2021, respectively.  In the event that the Company becomes unable to purchase products from its Chinese manufacturers, the Company may need to find an alternate manufacturer for its blood collection set, EasyPoint<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">®</sup> blood collection tube holder with needle, IV catheter, Patient Safe<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">®</sup> syringe, 0.5mL insulin syringe, 0.5mL autodisable syringe, and 2mL, 5mL, and 10mL syringes, and would increase domestic production for the 1mL and 3mL syringes and EasyPoint<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">®</sup> needles. </p>
CY2023 us-gaap Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
2200000
CY2022 us-gaap Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
3000000.0
CY2023 rvp License Revenue Percentage Payable To Patent Owner
LicenseRevenuePercentagePayableToPatentOwner
0.50
CY2023 us-gaap Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
43596926
CY2022 us-gaap Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
94818938
CY2021 us-gaap Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
188382454
CY2023 us-gaap Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
15040
CY2022 us-gaap Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
65597
CY2021 us-gaap Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
141435
CY2021 us-gaap Incremental Common Shares Attributable To Conversion Of Preferred Stock
IncrementalCommonSharesAttributableToConversionOfPreferredStock
232445
CY2023 us-gaap Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
15040
CY2022 us-gaap Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
65597
CY2021 us-gaap Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
373880
CY2023 us-gaap Net Income Loss
NetIncomeLoss
-7011036
CY2022 us-gaap Net Income Loss
NetIncomeLoss
5078557
CY2021 us-gaap Net Income Loss
NetIncomeLoss
56064241
CY2023 us-gaap Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
231946
CY2022 us-gaap Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
232444
CY2021 us-gaap Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
241703
CY2023 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
-7242982
CY2022 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
4846113
CY2021 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
55822538
CY2023 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
29937159
CY2022 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
32896348
CY2021 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
33870819
CY2023 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
29937159
CY2022 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
32961945
CY2021 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
34244699
CY2023 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
-0.24
CY2022 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
0.15
CY2021 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
1.65
CY2023 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
-0.24
CY2022 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
0.15
CY2021 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
1.63
CY2023Q4 rvp Health Insurance Benefits Self Insurance Threshold Minimum For Individual Claims
HealthInsuranceBenefitsSelfInsuranceThresholdMinimumForIndividualClaims
100000
CY2023Q4 rvp Health Insurance Benefits Self Insurance Threshold For Total Plan Claims
HealthInsuranceBenefitsSelfInsuranceThresholdForTotalPlanClaims
1700000
CY2023Q4 us-gaap Inventory Raw Materials Net Of Reserves
InventoryRawMaterialsNetOfReserves
4349029
CY2022Q4 us-gaap Inventory Raw Materials Net Of Reserves
InventoryRawMaterialsNetOfReserves
4896904
CY2023Q4 us-gaap Inventory Finished Goods Net Of Reserves
InventoryFinishedGoodsNetOfReserves
13232339
CY2022Q4 us-gaap Inventory Finished Goods Net Of Reserves
InventoryFinishedGoodsNetOfReserves
15787264
CY2023Q4 us-gaap Inventory Net
InventoryNet
17581368
CY2022Q4 us-gaap Inventory Net
InventoryNet
20684168
CY2023Q4 us-gaap Investments Fair Value Disclosure
InvestmentsFairValueDisclosure
34621213
CY2022Q4 us-gaap Investments Fair Value Disclosure
InvestmentsFairValueDisclosure
29657314
CY2023Q4 us-gaap Debt Securities Trading And Equity Securities Fv Ni Cost
DebtSecuritiesTradingAndEquitySecuritiesFvNiCost
40286064
CY2023Q4 rvp Debt Securities Trading And Equity Securities Accumulated Gross Unrealized Gain
DebtSecuritiesTradingAndEquitySecuritiesAccumulatedGrossUnrealizedGain
126705
CY2023Q4 rvp Debt Securities Trading And Equity Securities Accumulated Gross Unrealized Loss
DebtSecuritiesTradingAndEquitySecuritiesAccumulatedGrossUnrealizedLoss
5791556
CY2023Q4 us-gaap Trading Securities
TradingSecurities
34621213
CY2022Q4 us-gaap Debt Securities Trading And Equity Securities Fv Ni Cost
DebtSecuritiesTradingAndEquitySecuritiesFvNiCost
24800998
CY2022Q4 rvp Debt Securities Trading And Equity Securities Accumulated Gross Unrealized Gain
DebtSecuritiesTradingAndEquitySecuritiesAccumulatedGrossUnrealizedGain
4856316
CY2022Q4 us-gaap Trading Securities
TradingSecurities
29657314
CY2023 us-gaap Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
-10521166
CY2022 us-gaap Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
2343359
CY2021 us-gaap Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
513529
CY2023Q4 us-gaap Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
133192167
CY2022Q4 us-gaap Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
132339187
CY2023Q4 us-gaap Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
39713646
CY2022Q4 us-gaap Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
32186419
CY2023Q4 us-gaap Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
93478521
CY2022Q4 us-gaap Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
100152768
CY2023 us-gaap Depreciation
Depreciation
7527227
CY2022 us-gaap Depreciation
Depreciation
4602961
CY2021 us-gaap Depreciation
Depreciation
1257417
CY2023Q4 us-gaap Accrued Royalties Current
AccruedRoyaltiesCurrent
1376555
CY2022Q4 us-gaap Accrued Royalties Current
AccruedRoyaltiesCurrent
973701
CY2023 rvp Gross Sales Upon Which Royalties Are Based
GrossSalesUponWhichRoyaltiesAreBased
64883761
CY2022 rvp Gross Sales Upon Which Royalties Are Based
GrossSalesUponWhichRoyaltiesAreBased
118742140
CY2021 rvp Gross Sales Upon Which Royalties Are Based
GrossSalesUponWhichRoyaltiesAreBased
226294765
CY2023Q4 us-gaap Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
201492
CY2022Q4 us-gaap Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
435916
CY2023Q4 us-gaap Accrued Professional Fees Current
AccruedProfessionalFeesCurrent
320899
CY2022Q4 us-gaap Accrued Professional Fees Current
AccruedProfessionalFeesCurrent
254584
CY2023Q4 rvp Current Portion Of Preferred Stock Repurchase
CurrentPortionOfPreferredStockRepurchase
6000
CY2022Q4 rvp Current Portion Of Preferred Stock Repurchase
CurrentPortionOfPreferredStockRepurchase
1097954
CY2023Q4 us-gaap Other Sundry Liabilities Current
OtherSundryLiabilitiesCurrent
102180
CY2022Q4 us-gaap Other Sundry Liabilities Current
OtherSundryLiabilitiesCurrent
203690
CY2023Q4 us-gaap Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
630571
CY2022Q4 us-gaap Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
1992144
CY2023Q4 us-gaap Long Term Debt
LongTermDebt
1537510
CY2022Q4 us-gaap Long Term Debt
LongTermDebt
1819376
CY2023Q4 us-gaap Long Term Debt Current
LongTermDebtCurrent
303991
CY2022Q4 us-gaap Long Term Debt Current
LongTermDebtCurrent
285954
CY2023Q4 us-gaap Long Term Debt Noncurrent
LongTermDebtNoncurrent
1233519
CY2022Q4 us-gaap Long Term Debt Noncurrent
LongTermDebtNoncurrent
1533422
CY2023Q4 us-gaap Long Term Debt Maturities Repayments Of Principal In Next Twelve Months
LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
303991
CY2023Q4 us-gaap Long Term Debt Maturities Repayments Of Principal In Year Two
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
332480
CY2023Q4 us-gaap Long Term Debt Maturities Repayments Of Principal In Year Three
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
363205
CY2023Q4 us-gaap Long Term Debt Maturities Repayments Of Principal In Year Four
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
396770
CY2023Q4 us-gaap Long Term Debt Maturities Repayments Of Principal In Year Five
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
141064
CY2023Q4 us-gaap Long Term Debt
LongTermDebt
1537510
CY2021Q2 rvp Number Of Assembly Lines
NumberOfAssemblyLines
2
CY2023Q4 rvp Long Term Deferred Liability Technology Investment Agreement
LongTermDeferredLiabilityTechnologyInvestmentAgreement
69773538
CY2022Q4 rvp Long Term Deferred Liability Technology Investment Agreement
LongTermDeferredLiabilityTechnologyInvestmentAgreement
75459612
CY2023 us-gaap Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
33734
CY2022 us-gaap Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
1448000
CY2021 us-gaap Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
20041644
CY2023 us-gaap Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
-65529
CY2022 us-gaap Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
-8711302
CY2021 us-gaap Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
8079555
CY2023 us-gaap Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
-31795
CY2022 us-gaap Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
-7263302
CY2021 us-gaap Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
28121199
CY2023 us-gaap Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
-1855875
CY2022 us-gaap Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
3717559
CY2021 us-gaap Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
-6719211
CY2023 us-gaap Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
-17491
CY2022 us-gaap Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
3629613
CY2021 us-gaap Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
-2515418
CY2023 us-gaap Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
-1873366
CY2022 us-gaap Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
7347172
CY2021 us-gaap Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
-9234629
CY2023 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
-1905161
CY2022 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
83870
CY2021 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
18886570
CY2023Q4 us-gaap Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
4654612
CY2022Q4 us-gaap Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
5053102
CY2023Q4 us-gaap Deferred Tax Assets Tax Deferred Expense Reserves And Accruals
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
782234
CY2022Q4 us-gaap Deferred Tax Assets Tax Deferred Expense Reserves And Accruals
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
713429
CY2023Q4 rvp Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Employees
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployees
13311
CY2023Q4 us-gaap Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
299276
CY2022Q4 us-gaap Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
159405
CY2023Q4 us-gaap Deferred Tax Assets Deferred Income
DeferredTaxAssetsDeferredIncome
14742111
CY2022Q4 us-gaap Deferred Tax Assets Deferred Income
DeferredTaxAssetsDeferredIncome
15860880
CY2023Q4 rvp Deferred Tax Assets Capital Losses
DeferredTaxAssetsCapitalLosses
188270
CY2022Q4 rvp Deferred Tax Assets Capital Losses
DeferredTaxAssetsCapitalLosses
67962
CY2022Q4 us-gaap Deferred Tax Asset Interest Carryforward
DeferredTaxAssetInterestCarryforward
24572
CY2023Q4 us-gaap Deferred Tax Assets Gross
DeferredTaxAssetsGross
20679814
CY2022Q4 us-gaap Deferred Tax Assets Gross
DeferredTaxAssetsGross
21879350
CY2023Q4 rvp Deferred Tax Liabilities Unrealized Gains Losses On Trading Securities
DeferredTaxLiabilitiesUnrealizedGainsLossesOnTradingSecurities
-1194734
CY2022Q4 rvp Deferred Tax Liabilities Unrealized Gains Losses On Trading Securities
DeferredTaxLiabilitiesUnrealizedGainsLossesOnTradingSecurities
1028232
CY2023Q4 us-gaap Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
13199805
CY2022Q4 us-gaap Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
14049742
CY2023Q4 us-gaap Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
12005071
CY2022Q4 us-gaap Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
15077974
CY2023Q4 rvp Deferred Tax Assets Net Of Deferred Tax Liabilities Before Valuation Allowance
DeferredTaxAssetsNetOfDeferredTaxLiabilitiesBeforeValuationAllowance
8674743
CY2022Q4 rvp Deferred Tax Assets Net Of Deferred Tax Liabilities Before Valuation Allowance
DeferredTaxAssetsNetOfDeferredTaxLiabilitiesBeforeValuationAllowance
6801376
CY2023Q4 us-gaap Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
282713
CY2022Q4 us-gaap Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
282713
CY2023Q4 us-gaap Deferred Tax Assets Liabilities Net
DeferredTaxAssetsLiabilitiesNet
8392030
CY2022Q4 us-gaap Deferred Tax Assets Liabilities Net
DeferredTaxAssetsLiabilitiesNet
6518663
CY2023 us-gaap Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
0.21
CY2022Q4 us-gaap Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
283000
CY2023Q4 us-gaap Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
283000
CY2023 us-gaap Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
0.210
CY2022 us-gaap Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
0.210
CY2021 us-gaap Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
0.210
CY2023 us-gaap Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
0.008
CY2022 us-gaap Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
0.010
CY2021 us-gaap Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
0.064
CY2022 us-gaap Effective Income Tax Rate Reconciliation Change In Deferred Tax Assets Valuation Allowance
EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
0.055
CY2023 rvp Effective Income Tax Rate Reconciliation Deferred Tax Assets Valuation Allowance Percent
EffectiveIncomeTaxRateReconciliationDeferredTaxAssetsValuationAllowancePercent
-0.002
CY2022 rvp Effective Income Tax Rate Reconciliation Deferred Tax Assets Valuation Allowance Percent
EffectiveIncomeTaxRateReconciliationDeferredTaxAssetsValuationAllowancePercent
0.04
CY2022 us-gaap Effective Income Tax Rate Reconciliation Nondeductible Expense Share Based Compensation Cost
EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
0.108
CY2021 us-gaap Effective Income Tax Rate Reconciliation Nondeductible Expense Share Based Compensation Cost
EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
-0.001
CY2023 rvp Effective Income Tax Rate Reconciliation Limit On Compensation Percent
EffectiveIncomeTaxRateReconciliationLimitOnCompensationPercent
-0.002
CY2022 rvp Effective Income Tax Rate Reconciliation Limit On Compensation Percent
EffectiveIncomeTaxRateReconciliationLimitOnCompensationPercent
0.309
CY2022 us-gaap Effective Income Tax Rate Reconciliation Change In Enacted Tax Rate
EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
-0.751
CY2021 rvp Effective Income Tax Rate Reconciliation Paycheck Protection Program Loan Percent
EffectiveIncomeTaxRateReconciliationPaycheckProtectionProgramLoanPercent
-0.004
CY2023 rvp Effective Income Tax Rate Reconciliation Return To Provision And Other Adjustments Percent
EffectiveIncomeTaxRateReconciliationReturnToProvisionAndOtherAdjustmentsPercent
0.001
CY2022 rvp Effective Income Tax Rate Reconciliation Return To Provision And Other Adjustments Percent
EffectiveIncomeTaxRateReconciliationReturnToProvisionAndOtherAdjustmentsPercent
0.037
CY2021 rvp Effective Income Tax Rate Reconciliation Return To Provision And Other Adjustments Percent
EffectiveIncomeTaxRateReconciliationReturnToProvisionAndOtherAdjustmentsPercent
-0.017
CY2023 us-gaap Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
0.215
CY2022 us-gaap Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
0.016
CY2021 us-gaap Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
0.252
CY2023 rvp Number Of Entitled Shareholders
NumberOfEntitledShareholders
90
CY2023 rvp Contingent Liability Former Shareholders
ContingentLiabilityFormerShareholders
1400000
CY2023 rvp Preferred Stock Number Of Classes Outstanding
PreferredStockNumberOfClassesOutstanding
1
CY2022Q4 us-gaap Common Stock Shares Authorized
CommonStockSharesAuthorized
100000000
CY2023Q4 us-gaap Common Stock Shares Authorized
CommonStockSharesAuthorized
100000000
CY2022Q4 us-gaap Common Stock No Par Value
CommonStockNoParValue
0
CY2023Q4 us-gaap Common Stock No Par Value
CommonStockNoParValue
0
CY2022Q4 us-gaap Common Stock Shares Outstanding
CommonStockSharesOutstanding
29937159
CY2023Q4 us-gaap Common Stock Shares Outstanding
CommonStockSharesOutstanding
29937159
CY2022Q4 us-gaap Treasury Stock Common Shares
TreasuryStockCommonShares
4087145
CY2023Q4 us-gaap Treasury Stock Common Shares
TreasuryStockCommonShares
4087145
CY2023Q4 us-gaap Common Stock Capital Shares Reserved For Future Issuance
CommonStockCapitalSharesReservedForFutureIssuance
377595
CY2021 us-gaap Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
3660387
CY2022 us-gaap Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
10100000
CY2023 us-gaap Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
0
CY2023 rvp Defined Contribution Plan Employee Service Period
DefinedContributionPlanEmployeeServicePeriod
P90D
CY2023 us-gaap Defined Contribution Plan Maximum Annual Contributions Per Employee Percent
DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
0.88
CY2021 us-gaap Defined Contribution Plan Employer Matching Contribution Percent
DefinedContributionPlanEmployerMatchingContributionPercent
0.02
CY2022 us-gaap Defined Contribution Plan Employer Matching Contribution Percent
DefinedContributionPlanEmployerMatchingContributionPercent
0.02
CY2023 us-gaap Defined Contribution Plan Employer Matching Contribution Percent
DefinedContributionPlanEmployerMatchingContributionPercent
0.02
CY2023 us-gaap Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
240635
CY2022 us-gaap Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
241398
CY2021 us-gaap Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
204032
CY2023 us-gaap Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
43596926
CY2022 us-gaap Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
94818938
CY2021 us-gaap Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
188382454
CY2023Q4 us-gaap Noncurrent Assets
NoncurrentAssets
93478521
CY2022Q4 us-gaap Noncurrent Assets
NoncurrentAssets
100152768
CY2021Q1 us-gaap Payments For Repurchase Of Preferred Stock And Preference Stock
PaymentsForRepurchaseOfPreferredStockAndPreferenceStock
1101110
CY2022Q1 us-gaap Payments For Repurchase Of Preferred Stock And Preference Stock
PaymentsForRepurchaseOfPreferredStockAndPreferenceStock
1101110
CY2023Q1 us-gaap Payments For Repurchase Of Preferred Stock And Preference Stock
PaymentsForRepurchaseOfPreferredStockAndPreferenceStock
1101110
CY2020Q4 rvp Convertible Preferred Stock Number Of Common Shares Issued Upon Conversion
ConvertiblePreferredStockNumberOfCommonSharesIssuedUponConversion
754000
CY2020Q4 rvp Unpaid Dividends In Arrears Waived
UnpaidDividendsInArrearsWaived
7642049
CY2023Q4 ecd Rule10b51 Arr Adopted Flag
Rule10b51ArrAdoptedFlag
false
CY2023Q4 ecd Rule10b51 Arr Trmntd Flag
Rule10b51ArrTrmntdFlag
false
CY2023Q4 ecd Non Rule10b51 Arr Adopted Flag
NonRule10b51ArrAdoptedFlag
false
CY2023Q4 ecd Non Rule10b51 Arr Trmntd Flag
NonRule10b51ArrTrmntdFlag
false

Files In Submission

Name View Source Status
0001558370-24-004361-index-headers.html Edgar Link pending
0001558370-24-004361-index.html Edgar Link pending
0001558370-24-004361.txt Edgar Link pending
0001558370-24-004361-xbrl.zip Edgar Link pending
Financial_Report.xlsx Edgar Link pending
MetaLinks.json Edgar Link pending
R1.htm Edgar Link pending
R10.htm Edgar Link pending
R11.htm Edgar Link pending
R12.htm Edgar Link pending
R13.htm Edgar Link pending
R14.htm Edgar Link pending
R15.htm Edgar Link pending
R16.htm Edgar Link pending
R17.htm Edgar Link pending
R18.htm Edgar Link pending
R19.htm Edgar Link pending
R2.htm Edgar Link pending
R20.htm Edgar Link pending
R21.htm Edgar Link pending
R22.htm Edgar Link pending
R23.htm Edgar Link pending
R24.htm Edgar Link pending
R25.htm Edgar Link pending
R26.htm Edgar Link pending
R27.htm Edgar Link pending
R28.htm Edgar Link pending
R29.htm Edgar Link pending
R3.htm Edgar Link pending
R30.htm Edgar Link pending
R31.htm Edgar Link pending
R32.htm Edgar Link pending
R33.htm Edgar Link pending
R34.htm Edgar Link pending
R35.htm Edgar Link pending
R36.htm Edgar Link pending
R37.htm Edgar Link pending
R38.htm Edgar Link pending
R39.htm Edgar Link pending
R4.htm Edgar Link pending
R40.htm Edgar Link pending
R41.htm Edgar Link pending
R42.htm Edgar Link pending
R43.htm Edgar Link pending
R44.htm Edgar Link pending
R45.htm Edgar Link pending
R46.htm Edgar Link pending
R47.htm Edgar Link pending
R48.htm Edgar Link pending
R49.htm Edgar Link pending
R5.htm Edgar Link pending
R50.htm Edgar Link pending
R51.htm Edgar Link pending
R52.htm Edgar Link pending
R53.htm Edgar Link pending
R54.htm Edgar Link pending
R55.htm Edgar Link pending
R56.htm Edgar Link pending
R57.htm Edgar Link pending
R58.htm Edgar Link pending
R59.htm Edgar Link pending
R6.htm Edgar Link pending
R60.htm Edgar Link pending
R61.htm Edgar Link pending
R62.htm Edgar Link pending
R63.htm Edgar Link pending
R64.htm Edgar Link pending
R65.htm Edgar Link pending
R66.htm Edgar Link pending
R67.htm Edgar Link pending
R68.htm Edgar Link pending
R69.htm Edgar Link pending
R7.htm Edgar Link pending
R70.htm Edgar Link pending
R71.htm Edgar Link pending
R72.htm Edgar Link pending
R73.htm Edgar Link pending
R74.htm Edgar Link pending
R75.htm Edgar Link pending
R76.htm Edgar Link pending
R77.htm Edgar Link pending
R8.htm Edgar Link pending
R9.htm Edgar Link pending
report.css Edgar Link pending
Show.js Edgar Link pending
tmb-20231231.xsd Edgar Link pending
tmb-20231231x10k.htm Edgar Link pending
tmb-20231231x10k001.jpg Edgar Link pending
tmb-20231231xex31d1.htm Edgar Link pending
tmb-20231231xex31d2.htm Edgar Link pending
tmb-20231231xex32.htm Edgar Link pending
tmb-20231231xex97.htm Edgar Link pending
tmb-20231231_lab.xml Edgar Link unprocessable
tmb-20231231_pre.xml Edgar Link unprocessable
tmb-20231231x10k_htm.xml Edgar Link completed
FilingSummary.xml Edgar Link unprocessable
tmb-20231231_cal.xml Edgar Link unprocessable
tmb-20231231_def.xml Edgar Link unprocessable