2021 Q4 Form 10-K Financial Statement
#000155837022004880 Filed on March 31, 2022
Income Statement
Concept | 2021 Q4 | 2021 | 2020 Q4 |
---|---|---|---|
Revenue | $59.46M | $188.4M | $32.00M |
YoY Change | 85.83% | 130.12% | 153.34% |
Cost Of Revenue | $25.14M | $93.03M | $16.02M |
YoY Change | 56.91% | 107.41% | 108.57% |
Gross Profit | $34.32M | $95.35M | $15.98M |
YoY Change | 114.82% | 157.65% | 222.84% |
Gross Profit Margin | 57.72% | 50.62% | 49.93% |
Selling, General & Admin | $5.632M | $21.86M | $3.518M |
YoY Change | 60.1% | 76.78% | 18.41% |
% of Gross Profit | 16.41% | 22.92% | 22.02% |
Research & Development | $153.9K | $901.4K | $180.0K |
YoY Change | -14.52% | 56.89% | 30.24% |
% of Gross Profit | 0.45% | 0.95% | 1.13% |
Depreciation & Amortization | $555.0K | $1.257M | $207.1K |
YoY Change | 168.04% | 51.12% | -1.8% |
% of Gross Profit | 1.62% | 1.32% | 1.3% |
Operating Expenses | $5.786M | $22.76M | $3.693M |
YoY Change | 56.67% | 75.9% | 18.78% |
Operating Profit | $28.53M | $72.60M | $12.28M |
YoY Change | 132.31% | 201.59% | 567.76% |
Interest Expense | -$288.9K | $227.2K | $1.227M |
YoY Change | -123.54% | -12.71% | 5508.46% |
% of Operating Profit | -1.01% | 0.31% | 9.99% |
Other Income/Expense, Net | $425.2K | $425.2K | |
YoY Change | |||
Pretax Income | $28.67M | $74.95M | $13.51M |
YoY Change | 112.22% | 187.46% | 625.84% |
Income Tax | $7.746M | $18.89M | $2.001M |
% Of Pretax Income | 27.02% | 25.2% | 14.81% |
Net Earnings | $20.92M | $56.06M | $11.51M |
YoY Change | 81.82% | 131.45% | 518.31% |
Net Earnings / Revenue | 35.19% | 29.76% | 35.97% |
Basic Earnings Per Share | $1.65 | ||
Diluted Earnings Per Share | $615.7K | $1.63 | $338.6K |
COMMON SHARES | |||
Basic Shares Outstanding | 33.76M | 33.87M | |
Diluted Shares Outstanding | 34.24M |
Balance Sheet
Concept | 2021 Q4 | 2021 | 2020 Q4 |
---|---|---|---|
SHORT-TERM ASSETS | |||
Cash & Short-Term Investments | $42.43M | $42.43M | $25.65M |
YoY Change | 65.44% | 65.44% | 87.13% |
Cash & Equivalents | $29.16M | $29.16M | $17.57M |
Short-Term Investments | $13.27M | $13.27M | $8.082M |
Other Short-Term Assets | $702.0K | $702.0K | $684.3K |
YoY Change | 2.58% | 2.58% | 7.73% |
Inventory | $20.59M | $20.59M | $10.23M |
Prepaid Expenses | |||
Receivables | $34.86M | $34.86M | $21.13M |
Other Receivables | $5.924M | $5.924M | $0.00 |
Total Short-Term Assets | $104.5M | $104.5M | $69.48M |
YoY Change | 50.42% | 50.42% | 144.58% |
LONG-TERM ASSETS | |||
Property, Plant & Equipment | $87.93M | $87.93M | $30.82M |
YoY Change | 185.32% | 184.96% | 187.62% |
Goodwill | |||
YoY Change | |||
Intangibles | |||
YoY Change | |||
Long-Term Investments | |||
YoY Change | |||
Other Assets | $13.87M | $13.87M | $4.637M |
YoY Change | 199.16% | 199.16% | 77700.0% |
Total Long-Term Assets | $101.8M | $101.8M | $35.49M |
YoY Change | 186.81% | 186.82% | 229.52% |
TOTAL ASSETS | |||
Total Short-Term Assets | $104.5M | $104.5M | $69.48M |
Total Long-Term Assets | $101.8M | $101.8M | $35.49M |
Total Assets | $206.3M | $206.3M | $105.0M |
YoY Change | 96.54% | 96.54% | 167.93% |
SHORT-TERM LIABILITIES | |||
YoY Change | |||
Accounts Payable | $20.40M | $20.40M | $16.26M |
YoY Change | 25.52% | 25.52% | 224.64% |
Accrued Expenses | $5.893M | $5.893M | $4.513M |
YoY Change | 30.6% | 30.6% | 135.36% |
Deferred Revenue | $2.340M | ||
YoY Change | |||
Short-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Long-Term Debt Due | $289.1K | $289.1K | $1.031M |
YoY Change | -71.95% | -71.95% | 295.02% |
Total Short-Term Liabilities | $35.32M | $35.32M | $27.90M |
YoY Change | 26.61% | 26.61% | 237.9% |
LONG-TERM LIABILITIES | |||
Long-Term Debt | $1.814M | $1.814M | $2.710M |
YoY Change | -33.06% | -33.06% | 13.97% |
Other Long-Term Liabilities | $70.00M | $70.00M | $24.48M |
YoY Change | 185.95% | 185.95% | |
Total Long-Term Liabilities | $71.81M | $71.81M | $27.19M |
YoY Change | 164.12% | 164.12% | 1043.33% |
TOTAL LIABILITIES | |||
Total Short-Term Liabilities | $35.32M | $35.32M | $27.90M |
Total Long-Term Liabilities | $71.81M | $71.81M | $27.19M |
Total Liabilities | $107.1M | $107.1M | $55.09M |
YoY Change | 94.47% | 94.47% | 418.0% |
SHAREHOLDERS EQUITY | |||
Retained Earnings | $41.18M | -$9.668M | |
YoY Change | -525.96% | ||
Common Stock | $0.00 | $0.00 | |
YoY Change | |||
Preferred Stock | $63.02M | $59.29M | |
YoY Change | 6.31% | ||
Treasury Stock (at cost) | |||
YoY Change | |||
Treasury Stock Shares | $528.2K | ||
Shareholders Equity | $99.17M | $99.17M | $49.88M |
YoY Change | |||
Total Liabilities & Shareholders Equity | $206.3M | $206.3M | $105.0M |
YoY Change | 96.54% | 96.54% | 167.93% |
Cashflow Statement
Concept | 2021 Q4 | 2021 | 2020 Q4 |
---|---|---|---|
OPERATING ACTIVITIES | |||
Net Income | $20.92M | $56.06M | $11.51M |
YoY Change | 81.82% | 131.45% | 518.31% |
Depreciation, Depletion And Amortization | $555.0K | $1.257M | $207.1K |
YoY Change | 168.04% | 51.12% | -1.8% |
Cash From Operating Activities | $14.66M | $32.79M | $10.16M |
YoY Change | 44.26% | 72.62% | 1324.81% |
INVESTING ACTIVITIES | |||
Capital Expenditures | -$11.85M | $58.37M | -$11.57M |
YoY Change | 2.45% | 177.28% | 7890.25% |
Acquisitions | |||
YoY Change | |||
Other Investing Activities | $12.34K | -$4.674M | -$67.92K |
YoY Change | -118.17% | -371.34% | 66.31% |
Cash From Investing Activities | -$11.84M | -$63.04M | -$11.64M |
YoY Change | 1.74% | 226.17% | 6168.86% |
FINANCING ACTIVITIES | |||
Cash Dividend Paid | |||
YoY Change | |||
Common Stock Issuance & Retirement, Net | -$29.50K | ||
YoY Change | |||
Debt Paid & Issued, Net | $274.8K | ||
YoY Change | 5.33% | ||
Cash From Financing Activities | 9.978M | 41.84M | 3.324M |
YoY Change | 200.15% | 249.79% | -2348.34% |
NET CHANGE | |||
Cash From Operating Activities | 14.66M | 32.79M | 10.16M |
Cash From Investing Activities | -11.84M | -63.04M | -11.64M |
Cash From Financing Activities | 9.978M | 41.84M | 3.324M |
Net Change In Cash | 12.80M | 11.60M | 1.850M |
YoY Change | 591.92% | -0.31% | 386.95% |
FREE CASH FLOW | |||
Cash From Operating Activities | $14.66M | $32.79M | $10.16M |
Capital Expenditures | -$11.85M | $58.37M | -$11.57M |
Free Cash Flow | $26.52M | -$25.57M | $21.74M |
YoY Change | 22.0% | 1145.87% | 2432.67% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2021Q4 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
||
CY2020Q4 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
||
CY2020Q4 | us-gaap |
Operating Lease Right Of Use Asset Statement Of Financial Position Extensible List
OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2021-01-31#OtherAssets | |
CY2021Q4 | us-gaap |
Operating Lease Right Of Use Asset Statement Of Financial Position Extensible List
OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2021-01-31#OtherAssets | |
CY2020Q4 | us-gaap |
Operating Lease Liability Current Statement Of Financial Position Extensible List
OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2021-01-31#OtherAccruedLiabilitiesCurrent | |
CY2021Q4 | us-gaap |
Operating Lease Liability Current Statement Of Financial Position Extensible List
OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2021-01-31#OtherAccruedLiabilitiesCurrent | |
CY2020Q4 | us-gaap |
Operating Lease Liability Noncurrent Statement Of Financial Position Extensible List
OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2021-01-31#OtherLiabilitiesNoncurrent | |
CY2021Q4 | us-gaap |
Operating Lease Liability Noncurrent Statement Of Financial Position Extensible List
OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2021-01-31#OtherLiabilitiesNoncurrent | |
CY2021 | dei |
Entity Central Index Key
EntityCentralIndexKey
|
0000946563 | |
CY2021 | dei |
Document Fiscal Year Focus
DocumentFiscalYearFocus
|
2021 | |
CY2021 | dei |
Document Fiscal Period Focus
DocumentFiscalPeriodFocus
|
FY | |
CY2021 | dei |
Amendment Flag
AmendmentFlag
|
false | |
CY2020Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
33957204 | |
CY2021 | dei |
Document Type
DocumentType
|
10-K | |
CY2021 | dei |
Document Annual Report
DocumentAnnualReport
|
true | |
CY2021 | dei |
Document Period End Date
DocumentPeriodEndDate
|
2021-12-31 | |
CY2021 | dei |
Current Fiscal Year End Date
CurrentFiscalYearEndDate
|
--12-31 | |
CY2021 | dei |
Document Transition Report
DocumentTransitionReport
|
false | |
CY2021 | dei |
Entity File Number
EntityFileNumber
|
001-16465 | |
CY2021 | dei |
Entity Registrant Name
EntityRegistrantName
|
Retractable Technologies, Inc | |
CY2021 | dei |
Entity Address State Or Province
EntityAddressStateOrProvince
|
TX | |
CY2021 | dei |
Entity Tax Identification Number
EntityTaxIdentificationNumber
|
75-2599762 | |
CY2021 | dei |
Entity Address Address Line1
EntityAddressAddressLine1
|
511 Lobo Lane | |
CY2021 | dei |
Entity Address City Or Town
EntityAddressCityOrTown
|
Little Elm | |
CY2021 | dei |
Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
|
TX | |
CY2021 | dei |
Entity Address Postal Zip Code
EntityAddressPostalZipCode
|
75068-5295 | |
CY2021 | dei |
City Area Code
CityAreaCode
|
972 | |
CY2021 | dei |
Local Phone Number
LocalPhoneNumber
|
294-1010 | |
CY2021 | dei |
Security12b Title
Security12bTitle
|
Common | |
CY2021 | dei |
Trading Symbol
TradingSymbol
|
RVP | |
CY2021 | dei |
Security Exchange Name
SecurityExchangeName
|
NYSE | |
CY2021 | dei |
Entity Well Known Seasoned Issuer
EntityWellKnownSeasonedIssuer
|
No | |
CY2021 | dei |
Entity Voluntary Filers
EntityVoluntaryFilers
|
No | |
CY2021 | dei |
Entity Current Reporting Status
EntityCurrentReportingStatus
|
Yes | |
CY2021 | dei |
Entity Interactive Data Current
EntityInteractiveDataCurrent
|
Yes | |
CY2021 | dei |
Entity Filer Category
EntityFilerCategory
|
Non-accelerated Filer | |
CY2021 | dei |
Entity Small Business
EntitySmallBusiness
|
true | |
CY2021 | dei |
Entity Emerging Growth Company
EntityEmergingGrowthCompany
|
false | |
CY2021 | dei |
Icfr Auditor Attestation Flag
IcfrAuditorAttestationFlag
|
false | |
CY2021 | dei |
Entity Shell Company
EntityShellCompany
|
false | |
CY2021Q2 | dei |
Entity Public Float
EntityPublicFloat
|
200031281 | |
CY2022Q1 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
33123205 | |
CY2021 | dei |
Auditor Name
AuditorName
|
Moss Adams LLP | |
CY2021 | dei |
Auditor Location
AuditorLocation
|
Dallas, TX | |
CY2021 | dei |
Auditor Firm
AuditorFirmId
|
659 | |
CY2021Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
29162913 | |
CY2020Q4 | us-gaap |
Accrued Royalties Current
AccruedRoyaltiesCurrent
|
1973781 | |
CY2021Q4 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
3725527 | |
CY2020Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
17566682 | |
CY2021Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
352217 | |
CY2020Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
205822 | |
CY2021Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
34859505 | |
CY2020Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
21131841 | |
CY2021Q4 | us-gaap |
Receivables Long Term Contracts Or Programs
ReceivablesLongTermContractsOrPrograms
|
5924136 | |
CY2020Q4 | us-gaap |
Receivables Long Term Contracts Or Programs
ReceivablesLongTermContractsOrPrograms
|
11779078 | |
CY2021Q4 | us-gaap |
Equity Securities Fv Ni
EquitySecuritiesFvNi
|
13268986 | |
CY2020Q4 | us-gaap |
Equity Securities Fv Ni
EquitySecuritiesFvNi
|
8081833 | |
CY2021Q4 | us-gaap |
Inventory Net
InventoryNet
|
20589919 | |
CY2020Q4 | us-gaap |
Inventory Net
InventoryNet
|
10234646 | |
CY2021Q4 | us-gaap |
Other Assets Current
OtherAssetsCurrent
|
701969 | |
CY2020Q4 | us-gaap |
Other Assets Current
OtherAssetsCurrent
|
684317 | |
CY2021Q4 | us-gaap |
Assets Current
AssetsCurrent
|
104507428 | |
CY2020Q4 | us-gaap |
Assets Current
AssetsCurrent
|
69478397 | |
CY2021Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
87925651 | |
CY2020Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
30816504 | |
CY2021Q4 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
13865834 | |
CY2020Q4 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
4631206 | |
CY2021Q4 | us-gaap |
Other Assets
OtherAssets
|
5675 | |
CY2020Q4 | us-gaap |
Other Assets
OtherAssets
|
44567 | |
CY2021Q4 | us-gaap |
Assets
Assets
|
206304588 | |
CY2020Q4 | us-gaap |
Assets
Assets
|
104970674 | |
CY2021Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
20404573 | |
CY2020Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
16256444 | |
CY2021Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
289114 | |
CY2020Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
1030763 | |
CY2021Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
1056656 | |
CY2020Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
826762 | |
CY2021Q4 | us-gaap |
Dividends Payable Current
DividendsPayableCurrent
|
1438371 | |
CY2020Q4 | us-gaap |
Dividends Payable Current
DividendsPayableCurrent
|
49091 | |
CY2021Q4 | us-gaap |
Accrued Royalties Current
AccruedRoyaltiesCurrent
|
3450684 | |
CY2020Q4 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
3398904 | |
CY2021Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
4959878 | |
CY2020Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
4365770 | |
CY2021Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
35324803 | |
CY2020Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
27901515 | |
CY2021Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
69996330 | |
CY2020Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
24478697 | |
CY2021Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
1814194 | |
CY2020Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
2710337 | |
CY2021Q4 | us-gaap |
Liabilities
Liabilities
|
107135327 | |
CY2020Q4 | us-gaap |
Liabilities
Liabilities
|
55090549 | |
CY2020Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
1 | |
CY2021Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
1 | |
CY2020Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0 | |
CY2021Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0 | |
CY2020Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
100000000 | |
CY2021Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
100000000 | |
CY2021Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
34013104 | |
CY2021Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
33484935 | |
CY2020Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
33957204 | |
CY2021Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
0 | |
CY2020Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
0 | |
CY2021Q4 | us-gaap |
Additional Paid In Capital Preferred Stock
AdditionalPaidInCapitalPreferredStock
|
63024888 | |
CY2020Q4 | us-gaap |
Additional Paid In Capital Preferred Stock
AdditionalPaidInCapitalPreferredStock
|
59285401 | |
CY2021Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
41182429 | |
CY2020Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-9668221 | |
CY2021Q4 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
528169 | |
CY2020Q4 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
0 | |
CY2021Q4 | us-gaap |
Treasury Stock Common Value
TreasuryStockCommonValue
|
5270501 | |
CY2021Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
99169261 | |
CY2020Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
49880125 | |
CY2021Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
206304588 | |
CY2020Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
104970674 | |
CY2021 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
188382454 | |
CY2020 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
81862453 | |
CY2019 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
41797179 | |
CY2021 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
93029933 | |
CY2020 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
44854100 | |
CY2019 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
27659223 | |
CY2021 | us-gaap |
Gross Profit
GrossProfit
|
95352521 | |
CY2020 | us-gaap |
Gross Profit
GrossProfit
|
37008353 | |
CY2019 | us-gaap |
Gross Profit
GrossProfit
|
14137956 | |
CY2021 | us-gaap |
Selling And Marketing Expense
SellingAndMarketingExpense
|
4477651 | |
CY2020 | us-gaap |
Selling And Marketing Expense
SellingAndMarketingExpense
|
4061904 | |
CY2019 | us-gaap |
Selling And Marketing Expense
SellingAndMarketingExpense
|
4217863 | |
CY2021 | us-gaap |
Research And Development Expense
ResearchAndDevelopmentExpense
|
901381 | |
CY2020 | us-gaap |
Research And Development Expense
ResearchAndDevelopmentExpense
|
574527 | |
CY2019 | us-gaap |
Research And Development Expense
ResearchAndDevelopmentExpense
|
516095 | |
CY2021 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
17378301 | |
CY2020 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
8301169 | |
CY2019 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
6432158 | |
CY2021 | us-gaap |
Operating Expenses
OperatingExpenses
|
22757333 | |
CY2020 | us-gaap |
Operating Expenses
OperatingExpenses
|
12937600 | |
CY2019 | us-gaap |
Operating Expenses
OperatingExpenses
|
11166116 | |
CY2021 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
72595188 | |
CY2020 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
24070753 | |
CY2019 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
2971840 | |
CY2021 | us-gaap |
Gains Losses On Extinguishment Of Debt
GainsLossesOnExtinguishmentOfDebt
|
1377652 | |
CY2021 | rvp |
Other Income Technology Agreement
OtherIncomeTechnologyAgreement
|
425158 | |
CY2021 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
33870819 | |
CY2020 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
33169307 | |
CY2019 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
32672475 | |
CY2021 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
34244699 | |
CY2020 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
33300654 | |
CY2019 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
32672475 | |
CY2018Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
25613733 | |
CY2019 | us-gaap |
Dividends Preferred Stock
DividendsPreferredStock
|
219512 | |
CY2019 | us-gaap |
Net Income Loss
NetIncomeLoss
|
3148234 | |
CY2021 | rvp |
Interest And Other Income Loss
InterestAndOtherIncomeLoss
|
779996 | |
CY2020 | rvp |
Interest And Other Income Loss
InterestAndOtherIncomeLoss
|
2262758 | |
CY2019 | rvp |
Interest And Other Income Loss
InterestAndOtherIncomeLoss
|
351166 | |
CY2021 | us-gaap |
Interest Expense
InterestExpense
|
227183 | |
CY2020 | us-gaap |
Interest Expense
InterestExpense
|
260264 | |
CY2019 | us-gaap |
Interest Expense
InterestExpense
|
166897 | |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
74950811 | |
CY2020 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
26073247 | |
CY2019 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
3156109 | |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
18886570 | |
CY2020 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
1850234 | |
CY2019 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
7875 | |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
56064241 | |
CY2020 | us-gaap |
Net Income Loss
NetIncomeLoss
|
24223013 | |
CY2019 | us-gaap |
Net Income Loss
NetIncomeLoss
|
3148234 | |
CY2021 | us-gaap |
Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
|
241703 | |
CY2020 | us-gaap |
Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
|
573868 | |
CY2019 | us-gaap |
Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
|
702618 | |
CY2020 | rvp |
Deemed Capital Contribution On Extinguishment Of Preferred Stock Income Statement Impact
DeemedCapitalContributionOnExtinguishmentOfPreferredStockIncomeStatementImpact
|
2975708 | |
CY2021 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
55822538 | |
CY2020 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
26624853 | |
CY2019 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
2445616 | |
CY2021 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.65 | |
CY2020 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.80 | |
CY2019 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.07 | |
CY2021 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.63 | |
CY2020 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.80 | |
CY2019 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.07 | |
CY2019Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
28542455 | |
CY2020 | us-gaap |
Stock Issued During Period Value Conversion Of Convertible Securities
StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
|
-3489672 | |
CY2020 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
922512 | |
CY2020 | us-gaap |
Stock Redeemed Or Called During Period Value
StockRedeemedOrCalledDuringPeriodValue
|
107250 | |
CY2020 | us-gaap |
Dividends Preferred Stock
DividendsPreferredStock
|
210933 | |
CY2020 | us-gaap |
Net Income Loss
NetIncomeLoss
|
24223013 | |
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 |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
5270501 | |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
56064241 | |
CY2021Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
99169261 | |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
56064241 | |
CY2020 | us-gaap |
Profit Loss
ProfitLoss
|
24223013 | |
CY2019 | us-gaap |
Profit Loss
ProfitLoss
|
3148234 | |
CY2021 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
1257417 | |
CY2020 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
832069 | |
CY2019 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
852080 | |
CY2021 | rvp |
Net Equity Securities Fv Unrealized Gain
NetEquitySecuritiesFvUnrealizedGain
|
-513529 | |
CY2020 | rvp |
Net Equity Securities Fv Unrealized Gain
NetEquitySecuritiesFvUnrealizedGain
|
-1870010 | |
CY2019 | rvp |
Net Equity Securities Fv Unrealized Gain
NetEquitySecuritiesFvUnrealizedGain
|
-129315 | |
CY2020 | rvp |
Equity Securities Fair Value Realized Gain
EquitySecuritiesFairValueRealizedGain
|
-162595 | |
CY2019 | rvp |
Equity Securities Fair Value Realized Gain
EquitySecuritiesFairValueRealizedGain
|
-7925 | |
CY2021 | us-gaap |
Accretion Expense
AccretionExpense
|
109019 | |
CY2021 | us-gaap |
Deferred Income Taxes And Tax Credits
DeferredIncomeTaxesAndTaxCredits
|
-9234628 | |
CY2020 | us-gaap |
Deferred Income Taxes And Tax Credits
DeferredIncomeTaxesAndTaxCredits
|
-4631206 | |
CY2021 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
150000 | |
CY2020 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
59440 | |
CY2021 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
3660387 | |
CY2021 | rvp |
Gain On Forgiveness Of Ppp Loan
GainOnForgivenessOfPppLoan
|
-1377652 | |
CY2020 | us-gaap |
Gain Loss On Disposition Of Assets
GainLossOnDispositionOfAssets
|
-33140 | |
CY2021 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
13877663 | |
CY2020 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
14626910 | |
CY2019 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
1652015 | |
CY2021 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
10355273 | |
CY2020 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
2784054 | |
CY2019 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
-94502 | |
CY2021 | us-gaap |
Increase Decrease In Other Current Assets
IncreaseDecreaseInOtherCurrentAssets
|
17652 | |
CY2020 | us-gaap |
Increase Decrease In Other Current Assets
IncreaseDecreaseInOtherCurrentAssets
|
49116 | |
CY2019 | us-gaap |
Increase Decrease In Other Current Assets
IncreaseDecreaseInOtherCurrentAssets
|
-9602 | |
CY2020 | us-gaap |
Increase Decrease In Income Taxes Receivable
IncreaseDecreaseInIncomeTaxesReceivable
|
-100785 | |
CY2019 | us-gaap |
Increase Decrease In Income Taxes Receivable
IncreaseDecreaseInIncomeTaxesReceivable
|
-100937 | |
CY2021 | rvp |
Increase Decrease In Other Operating Assets Excluding Other Current Assets
IncreaseDecreaseInOtherOperatingAssetsExcludingOtherCurrentAssets
|
-38892 | |
CY2020 | rvp |
Increase Decrease In Other Operating Assets Excluding Other Current Assets
IncreaseDecreaseInOtherOperatingAssetsExcludingOtherCurrentAssets
|
-43748 | |
CY2019 | rvp |
Increase Decrease In Other Operating Assets Excluding Other Current Assets
IncreaseDecreaseInOtherOperatingAssetsExcludingOtherCurrentAssets
|
-77541 | |
CY2021 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
4148128 | |
CY2020 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
11248840 | |
CY2019 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
-362072 | |
CY2021 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
2147705 | |
CY2020 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
2232059 | |
CY2019 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
55150 | |
CY2021 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
594107 | |
CY2020 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
4347826 | |
CY2019 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
7919 | |
CY2021 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
32793499 | |
CY2020 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
18997029 | |
CY2019 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
2194638 | |
CY2021 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
58366563 | |
CY2021 | us-gaap |
Proceeds From Sale Maturity And Collections Of Investments
ProceedsFromSaleMaturityAndCollectionsOfInvestments
|
75000 | |
CY2020 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
21049656 | |
CY2019 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
632078 | |
CY2021 | us-gaap |
Payments To Acquire Investments
PaymentsToAcquireInvestments
|
4748624 | |
CY2020 | us-gaap |
Payments To Acquire Investments
PaymentsToAcquireInvestments
|
2242897 | |
CY2019 | us-gaap |
Payments To Acquire Investments
PaymentsToAcquireInvestments
|
7360398 | |
CY2020 | us-gaap |
Dividends Preferred Stock Cash
DividendsPreferredStockCash
|
49091 | |
CY2019 | us-gaap |
Dividends Preferred Stock Cash
DividendsPreferredStockCash
|
54800 | |
CY2020 | us-gaap |
Proceeds From Sale Maturity And Collections Of Investments
ProceedsFromSaleMaturityAndCollectionsOfInvestments
|
3965329 | |
CY2019 | us-gaap |
Proceeds From Sale Maturity And Collections Of Investments
ProceedsFromSaleMaturityAndCollectionsOfInvestments
|
2712134 | |
CY2021 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-63040187 | |
CY2020 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-19327224 | |
CY2019 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-5280342 | |
CY2021 | us-gaap |
Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
|
274791 | |
CY2020 | us-gaap |
Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
|
260894 | |
CY2019 | us-gaap |
Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
|
407014 | |
CY2020 | us-gaap |
Proceeds From Payments For Other Financing Activities
ProceedsFromPaymentsForOtherFinancingActivities
|
1363000 | |
CY2021 | rvp |
Proceeds From Technology Investment Agreement
ProceedsFromTechnologyInvestmentAgreement
|
52366282 | |
CY2020 | rvp |
Proceeds From Technology Investment Agreement
ProceedsFromTechnologyInvestmentAgreement
|
10636822 | |
CY2021 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
48600 | |
CY2020 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
922512 | |
CY2021 | rvp |
Payment Of Preferred Stock Redemption Price Payable
PaymentOfPreferredStockRedemptionPricePayable
|
101250 | |
CY2021 | us-gaap |
Payments For Repurchase Of Preferred Stock And Preference Stock
PaymentsForRepurchaseOfPreferredStockAndPreferenceStock
|
1101110 | |
CY2020 | us-gaap |
Payments For Repurchase Of Preferred Stock And Preference Stock
PaymentsForRepurchaseOfPreferredStockAndPreferenceStock
|
482670 | |
CY2021 | us-gaap |
Payments Of Dividends Preferred Stock And Preference Stock
PaymentsOfDividendsPreferredStockAndPreferenceStock
|
3824311 | |
CY2020 | us-gaap |
Payments Of Dividends Preferred Stock And Preference Stock
PaymentsOfDividendsPreferredStockAndPreferenceStock
|
216642 | |
CY2019 | us-gaap |
Payments Of Dividends Preferred Stock And Preference Stock
PaymentsOfDividendsPreferredStockAndPreferenceStock
|
219825 | |
CY2021 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
5270501 | |
CY2021 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
41842919 | |
CY2020 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
11962128 | |
CY2019 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-626839 | |
CY2021 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
11596231 | |
CY2020 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
11631933 | |
CY2019 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
-3712543 | |
CY2020Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
17566682 | |
CY2019Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
5934749 | |
CY2018Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
9647292 | |
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 | |
CY2019Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
5934749 | |
CY2021 | us-gaap |
Interest Paid Net
InterestPaidNet
|
118163 | |
CY2020 | us-gaap |
Interest Paid Net
InterestPaidNet
|
260264 | |
CY2019 | us-gaap |
Interest Paid Net
InterestPaidNet
|
166897 | |
CY2021 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
27124342 | |
CY2020 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
2106000 | |
CY2021 | us-gaap |
Dividends Preferred Stock Cash
DividendsPreferredStockCash
|
1438371 | |
CY2021 | us-gaap |
Conversion Of Stock Amount Issued1
ConversionOfStockAmountIssued1
|
30500 | |
CY2020 | us-gaap |
Conversion Of Stock Amount Issued1
ConversionOfStockAmountIssued1
|
96700 | |
CY2019 | us-gaap |
Conversion Of Stock Amount Issued1
ConversionOfStockAmountIssued1
|
8500 | |
CY2021 | rvp |
Amounts Receivable Under Technology Investment Agreement
AmountsReceivableUnderTechnologyInvestmentAgreement
|
5924136 | |
CY2020 | rvp |
Amounts Receivable Under Technology Investment Agreement
AmountsReceivableUnderTechnologyInvestmentAgreement
|
11779078 | |
CY2021 | us-gaap |
Stock Redeemed Or Called During Period Value
StockRedeemedOrCalledDuringPeriodValue
|
6000 | |
CY2020 | us-gaap |
Stock Redeemed Or Called During Period Value
StockRedeemedOrCalledDuringPeriodValue
|
107250 | |
CY2021 | rvp |
Preferred Stock Repurchase In Noncash Investing And Financing Activities
PreferredStockRepurchaseInNoncashInvestingAndFinancingActivities
|
2132948 | |
CY2020 | rvp |
Preferred Stock Repurchase In Noncash Investing And Financing Activities
PreferredStockRepurchaseInNoncashInvestingAndFinancingActivities
|
3007002 | |
CY2021 | 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> | |
CY2021 | rvp |
Number Of Products Consigned To Customer
NumberOfProductsConsignedToCustomer
|
0 | |
CY2021 | rvp |
Revenue Recognition Period For Return Of Incorrect Shipments
RevenueRecognitionPeriodForReturnOfIncorrectShipments
|
P10D | |
CY2021 | rvp |
Revenue Recognition Overstock Return Limit Number
RevenueRecognitionOverstockReturnLimitNumber
|
2 | |
CY2021 | 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 debt and equity securities through consultation with its outside investment advisors. Management is responsible for directing investment activity based on current economic conditions. In 2021, a significant portion of the Company's sales were to the U.S. government, which Management does not consider a credit risk. As a consequence, 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 2021, 2020, and 2019:</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.55%;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: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><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.16%;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.38%;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.16%;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.55%;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.58%;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.16%;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.55%;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: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;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;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;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.66%;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;">2019</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;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.55%;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: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;"> </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;"> 2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;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.38%;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;"> 3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;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.55%;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: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><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;">41.6 million</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;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.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">19.0 million</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;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.55%;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: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><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;"> 50.6</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;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.38%;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;"> 45.6</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;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 increased its allowance for doubtful accounts by $150 thousand in 2021.</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 92% of its products in 2021 from its Chinese manufacturers. Purchases from Chinese manufacturers aggregated 85.2% and 82.6% of products in 2020 and 2019, respectively. In the event that the Company becomes unable to purchase products from its Chinese manufacturers, the Company would need to find an alternate manufacturer for its blood collection set, 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> | |
CY2021 | us-gaap |
Allowance For Doubtful Accounts Receivable Period Increase Decrease
AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease
|
-150000 | |
CY2021 | rvp |
Allowance For Contractual Pricing
AllowanceForContractualPricing
|
6200000 | |
CY2020 | rvp |
Allowance For Contractual Pricing
AllowanceForContractualPricing
|
3400000 | |
CY2021 | rvp |
Revenue Recognition Overstock Return Period
RevenueRecognitionOverstockReturnPeriod
|
P12M | |
CY2021 | rvp |
Revenue Recognition Maximum Percentage Of Distributors Total Purchase In Prior Twelve Month Period For Overstock Return
RevenueRecognitionMaximumPercentageOfDistributorsTotalPurchaseInPriorTwelveMonthPeriodForOverstockReturn
|
0.01 | |
CY2021 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
188382454 | |
CY2020 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
81862453 | |
CY2019 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
41797179 | |
CY2019 | us-gaap |
Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
|
702618 | |
CY2020 | rvp |
Deemed Capital Contribution On Extinguishment Of Preferred Stock Income Statement Impact
DeemedCapitalContributionOnExtinguishmentOfPreferredStockIncomeStatementImpact
|
2975708 | |
CY2021 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
141435 | |
CY2020 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
131347 | |
CY2019 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
639300 | |
CY2021 | us-gaap |
Incremental Common Shares Attributable To Conversion Of Preferred Stock
IncrementalCommonSharesAttributableToConversionOfPreferredStock
|
232445 | |
CY2021 | rvp |
Diluted Eps Calculated Under Treasury Stock Method
DilutedEpsCalculatedUnderTreasuryStockMethod
|
373880 | |
CY2020 | rvp |
Diluted Eps Calculated Under Treasury Stock Method
DilutedEpsCalculatedUnderTreasuryStockMethod
|
131347 | |
CY2019 | rvp |
Diluted Eps Calculated Under Treasury Stock Method
DilutedEpsCalculatedUnderTreasuryStockMethod
|
639300 | |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
56064241 | |
CY2020 | us-gaap |
Net Income Loss
NetIncomeLoss
|
24223013 | |
CY2019 | us-gaap |
Net Income Loss
NetIncomeLoss
|
3148234 | |
CY2021 | us-gaap |
Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
|
241703 | |
CY2020 | us-gaap |
Preferred Stock Dividends Income Statement Impact
PreferredStockDividendsIncomeStatementImpact
|
573868 | |
CY2021 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
55822538 | |
CY2020 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
26624853 | |
CY2019 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
2445616 | |
CY2021 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
33870819 | |
CY2020 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
33169307 | |
CY2019 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
32672475 | |
CY2021 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
34244699 | |
CY2020 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
33300654 | |
CY2019 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
32672475 | |
CY2021 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.65 | |
CY2020 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.80 | |
CY2019 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.07 | |
CY2021 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.63 | |
CY2020 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.80 | |
CY2019 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.07 | |
CY2021Q4 | us-gaap |
Equity Securities Fv Ni
EquitySecuritiesFvNi
|
13268986 | |
CY2021Q4 | us-gaap |
Equity Securities Fv Ni Cost
EquitySecuritiesFvNiCost
|
10747733 | |
CY2020Q3 | us-gaap |
Research And Development Arrangement With Federal Government Customer Funding To Offset Costs Incurred
ResearchAndDevelopmentArrangementWithFederalGovernmentCustomerFundingToOffsetCostsIncurred
|
81029518 | |
CY2021Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
4402828 | |
CY2020Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
1358552 | |
CY2021Q4 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
16187091 | |
CY2020Q4 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
8876094 | |
CY2021Q4 | us-gaap |
Inventory Net
InventoryNet
|
20589919 | |
CY2020Q4 | us-gaap |
Inventory Net
InventoryNet
|
10234646 | |
CY2021Q4 | us-gaap |
Equity Securities Fv Ni
EquitySecuritiesFvNi
|
13268986 | |
CY2020Q4 | us-gaap |
Equity Securities Fv Ni
EquitySecuritiesFvNi
|
8081833 | |
CY2021 | us-gaap |
Equity Securities Fv Ni Unrealized Gain
EquitySecuritiesFvNiUnrealizedGain
|
2521253 | |
CY2020Q4 | us-gaap |
Equity Securities Fv Ni Cost
EquitySecuritiesFvNiCost
|
6082508 | |
CY2020 | us-gaap |
Equity Securities Fv Ni Unrealized Gain
EquitySecuritiesFvNiUnrealizedGain
|
1999325 | |
CY2020Q4 | us-gaap |
Equity Securities Fv Ni
EquitySecuritiesFvNi
|
8081833 | |
CY2021 | us-gaap |
Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
|
2521253 | |
CY2020 | us-gaap |
Debt And Equity Securities Unrealized Gain Loss
DebtAndEquitySecuritiesUnrealizedGainLoss
|
1999325 | |
CY2020Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
2710337 | |
CY2021Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
115509110 | |
CY2020Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
57142546 | |
CY2021Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
27583459 | |
CY2020Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
26326042 | |
CY2021Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
87925651 | |
CY2020Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
30816504 | |
CY2021 | us-gaap |
Depreciation
Depreciation
|
1257417 | |
CY2020 | us-gaap |
Depreciation
Depreciation
|
832069 | |
CY2019 | us-gaap |
Depreciation
Depreciation
|
851673 | |
CY2020Q4 | us-gaap |
Contract With Customer Refund Liability Current
ContractWithCustomerRefundLiabilityCurrent
|
1686868 | |
CY2021Q4 | us-gaap |
Accrued Professional Fees Current
AccruedProfessionalFeesCurrent
|
185515 | |
CY2021Q4 | us-gaap |
Contract With Customer Refund Liability Current
ContractWithCustomerRefundLiabilityCurrent
|
2339530 | |
CY2020Q4 | us-gaap |
Accrued Professional Fees Current
AccruedProfessionalFeesCurrent
|
331204 | |
CY2021Q4 | rvp |
Current Portion Of Preferred Stock Repurchase
CurrentPortionOfPreferredStockRepurchase
|
1098282 | |
CY2020Q4 | rvp |
Current Portion Of Preferred Stock Repurchase
CurrentPortionOfPreferredStockRepurchase
|
1092282 | |
CY2021Q4 | us-gaap |
Other Sundry Liabilities Current
OtherSundryLiabilitiesCurrent
|
102200 | |
CY2020Q4 | us-gaap |
Other Sundry Liabilities Current
OtherSundryLiabilitiesCurrent
|
288550 | |
CY2021Q4 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
3725527 | |
CY2020Q4 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
3398904 | |
CY2021Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
2103308 | |
CY2020Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
3741100 | |
CY2021Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
289114 | |
CY2020Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
1030763 | |
CY2021Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
1814194 | |
CY2021Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Next Twelve Months
LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
|
289114 | |
CY2021Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Two
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
|
304116 | |
CY2021Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Three
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
|
319682 | |
CY2021Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Four
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
|
336485 | |
CY2021Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Five
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
|
353944 | |
CY2021Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal After Year Five
LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
|
499967 | |
CY2021Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
2103308 | |
CY2021Q4 | rvp |
Long Term Deferred Liability Technology Investment Agreement
LongTermDeferredLiabilityTechnologyInvestmentAgreement
|
68955664 | |
CY2020Q4 | rvp |
Long Term Deferred Liability Technology Investment Agreement
LongTermDeferredLiabilityTechnologyInvestmentAgreement
|
22444324 | |
CY2021Q4 | rvp |
Long Term Deferred Liability Preferred Stock Redemption Amount
LongTermDeferredLiabilityPreferredStockRedemptionAmount
|
1040666 | |
CY2020Q4 | rvp |
Long Term Deferred Liability Preferred Stock Redemption Amount
LongTermDeferredLiabilityPreferredStockRedemptionAmount
|
2034373 | |
CY2021Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
69996330 | |
CY2020Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
24478697 | |
CY2021 | rvp |
Stock Repurchase Liability On Net Present Value
StockRepurchaseLiabilityOnNetPresentValue
|
3303330 | |
CY2021 | rvp |
Number Of Annual Installment Payments
NumberOfAnnualInstallmentPayments
|
3 | |
CY2021 | rvp |
Other Long Term Liabilities Purchase Price Payable
OtherLongTermLiabilitiesPurchasePricePayable
|
1101110 | |
CY2021Q4 | rvp |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost Related To Non Employee
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCostRelatedToNonEmployee
|
8887 | |
CY2020Q4 | rvp |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost Related To Non Employee
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCostRelatedToNonEmployee
|
8515 | |
CY2021 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
20041644 | |
CY2020 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
4431590 | |
CY2021 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
8079555 | |
CY2020 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
2049850 | |
CY2019 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
7875 | |
CY2021 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
28121199 | |
CY2020 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
6481440 | |
CY2019 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
7875 | |
CY2021 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-6719211 | |
CY2020 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-3428399 | |
CY2021 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-2515418 | |
CY2020 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-1202807 | |
CY2021 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-9234629 | |
CY2020 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-4631206 | |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
18886570 | |
CY2020 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
1850234 | |
CY2019 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
7875 | |
CY2021 | rvp |
Income Tax Expense Benefit Attributable To Carry Back Losses
IncomeTaxExpenseBenefitAttributableToCarryBackLosses
|
2000000.0 | |
CY2020 | rvp |
Income Tax Expense Benefit Attributable To Carry Back Losses
IncomeTaxExpenseBenefitAttributableToCarryBackLosses
|
23300000 | |
CY2021Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
130643 | |
CY2020Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
198675 | |
CY2021Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Liabilities
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
|
1298083 | |
CY2020Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Liabilities
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
|
824920 | |
CY2021Q4 | rvp |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost Related To Employee
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCostRelatedToEmployee
|
958530 | |
CY2020Q4 | rvp |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost Related To Employee
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCostRelatedToEmployee
|
15188 | |
CY2021Q4 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
118201 | |
CY2020Q4 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
98748 | |
CY2021Q4 | rvp |
Deferred Income Technology Investment Agreement Contract
DeferredIncomeTechnologyInvestmentAgreementContract
|
18199768 | |
CY2020Q4 | rvp |
Deferred Income Technology Investment Agreement Contract
DeferredIncomeTechnologyInvestmentAgreementContract
|
5675617 | |
CY2021Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
20714112 | |
CY2020Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
6821663 | |
CY2021Q4 | rvp |
Deferred Tax Liabilities Unrealized Gain Losses
DeferredTaxLiabilitiesUnrealizedGainLosses
|
665960 | |
CY2020Q4 | rvp |
Deferred Tax Liabilities Unrealized Gain Losses
DeferredTaxLiabilitiesUnrealizedGainLosses
|
508197 | |
CY2021Q4 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
6182318 | |
CY2020Q4 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
1682260 | |
CY2021Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
6848278 | |
CY2020Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
2190457 | |
CY2021Q4 | us-gaap |
Deferred Tax Assets Liabilities Net
DeferredTaxAssetsLiabilitiesNet
|
13865834 | |
CY2020Q4 | us-gaap |
Deferred Tax Assets Liabilities Net
DeferredTaxAssetsLiabilitiesNet
|
4631206 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.21 | |
CY2020 | rvp |
Effective Income Tax Value Reconciliation Release Of Valuation Allowance Net Operating Loss Carryforward
EffectiveIncomeTaxValueReconciliationReleaseOfValuationAllowanceNetOperatingLossCarryforward
|
5000000.0 | |
CY2017 | us-gaap |
Effective Income Tax Rate Reconciliation Change In Enacted Tax Rate
EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
|
0.80 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.210 | |
CY2020 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.210 | |
CY2019 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.210 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
0.064 | |
CY2020 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
0.042 | |
CY2019 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
0.020 | |
CY2020 | us-gaap |
Effective Income Tax Rate Reconciliation Change In Deferred Tax Assets Valuation Allowance
EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
-0.192 | |
CY2019 | us-gaap |
Effective Income Tax Rate Reconciliation Change In Deferred Tax Assets Valuation Allowance
EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
-0.356 | |
CY2020 | rvp |
Effective Income Tax Rate Reconciliation Deferred Tax Assets Valuation Allowance Percent
EffectiveIncomeTaxRateReconciliationDeferredTaxAssetsValuationAllowancePercent
|
-0.006 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation Nondeductible Expense Share Based Compensation Cost
EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
|
-0.001 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation Other Adjustments
EffectiveIncomeTaxRateReconciliationOtherAdjustments
|
-0.004 | |
CY2021 | rvp |
Effective Income Tax Rate Reconciliation Return To Provision And Other Adjustments
EffectiveIncomeTaxRateReconciliationReturnToProvisionAndOtherAdjustments
|
0.017 | |
CY2020 | rvp |
Effective Income Tax Rate Reconciliation Return To Provision And Other Adjustments
EffectiveIncomeTaxRateReconciliationReturnToProvisionAndOtherAdjustments
|
-0.017 | |
CY2019 | rvp |
Effective Income Tax Rate Reconciliation Return To Provision And Other Adjustments
EffectiveIncomeTaxRateReconciliationReturnToProvisionAndOtherAdjustments
|
-0.129 | |
CY2021 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.252 | |
CY2020 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.071 | |
CY2019 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.003 | |
CY2021Q4 | us-gaap |
Treasury Stock Shares
TreasuryStockShares
|
528169 | |
CY2021Q4 | us-gaap |
Convertible Preferred Stock Shares Issued Upon Conversion
ConvertiblePreferredStockSharesIssuedUponConversion
|
405495 | |
CY2021Q2 | rvp |
Cumulative Annual Payments
CumulativeAnnualPayments
|
5056945 | |
CY2022Q1 | rvp |
Number Of Entitled Shareholders
NumberOfEntitledShareholders
|
90 | |
CY2022Q1 | rvp |
Contingent Liability Former Shareholders
ContingentLiabilityFormerShareholders
|
1400000 | |
CY2020 | rvp |
Preferred Stock Number Of Classes Outstanding
PreferredStockNumberOfClassesOutstanding
|
1 | |
CY2020Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
100000000 | |
CY2021Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
100000000 | |
CY2020Q4 | us-gaap |
Common Stock No Par Value
CommonStockNoParValue
|
0 | |
CY2021Q4 | us-gaap |
Common Stock No Par Value
CommonStockNoParValue
|
0 | |
CY2021Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
33484935 | |
CY2020Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
33957204 | |
CY2021 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
48600 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Weighted Average Grant Date Fair Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
|
10.21 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Risk Free Interest Rate
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
|
0.0120 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Volatility Rate
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
|
0.9266 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Fair Value Assumptions Expected Term1
SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
|
P10Y | |
CY2021 | us-gaap |
Deferred Compensation Arrangement With Individual Maximum Contractual Term1
DeferredCompensationArrangementWithIndividualMaximumContractualTerm1
|
P3Y | |
CY2021 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
3660387 | |
CY2021 | rvp |
Allocated Share Based Compensation Expense Year One
AllocatedShareBasedCompensationExpenseYearOne
|
4595400 | |
CY2021 | rvp |
Allocated Share Based Compensation Expense Year Two
AllocatedShareBasedCompensationExpenseYearTwo
|
4595400 | |
CY2020 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
1733856 | |
CY2021 | rvp |
Allocated Share Based Compensation Expense Year Three
AllocatedShareBasedCompensationExpenseYearThree
|
935013 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
842349 | |
CY2020 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
103312 | |
CY2021 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
38892 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Dividend Payments
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments
|
0 | |
CY2021 | rvp |
Defined Contribution Plan Employee Service Period
DefinedContributionPlanEmployeeServicePeriod
|
P90D | |
CY2021 | us-gaap |
Defined Contribution Plan Maximum Annual Contributions Per Employee Percent
DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
|
0.88 | |
CY2021 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
204032 | |
CY2020 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
162008 | |
CY2019 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
117917 | |
CY2021 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
188382454 | |
CY2020 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
81862453 | |
CY2019 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
41797179 | |
CY2021Q4 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
87925651 | |
CY2020Q4 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
30816504 | |
CY2021 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
32272 | |
CY2020 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
106101 | |
CY2020Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
38892 | |
CY2020Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
38892 | |
CY2020Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
38892 | |
CY2021 | rvp |
Cash Consideration On Repurchase Of Shares Payment Period
CashConsiderationOnRepurchaseOfSharesPaymentPeriod
|
P3Y | |
CY2021Q1 | rvp |
Number Of Installments
NumberOfInstallments
|
2 | |
CY2021Q2 | us-gaap |
Debt Instrument Decrease Forgiveness
DebtInstrumentDecreaseForgiveness
|
1377652 | |
CY2020Q3 | rvp |
Technology Investment Agreement Term
TechnologyInvestmentAgreementTerm
|
P10Y | |
CY2021 | us-gaap |
Property Plant And Equipment Additions
PropertyPlantAndEquipmentAdditions
|
46300000 | |
CY2021Q4 | rvp |
Area Of Land For Existing Properties
AreaOfLandForExistingProperties
|
27800 | |
CY2021Q4 | rvp |
Area Of Land For New Warehouse
AreaOfLandForNewWarehouse
|
55000 | |
CY2021 | rvp |
Estimated Cost Of Controlled Environment Within Existing Properties
EstimatedCostOfControlledEnvironmentWithinExistingProperties
|
6700000 | |
CY2021 | rvp |
Increase Cost Of Controlled Environment Within Manufacturing Equipment
IncreaseCostOfControlledEnvironmentWithinManufacturingEquipment
|
5900000 | |
CY2021 | rvp |
Estimated Cost Of Construction Of New Warehouse
EstimatedCostOfConstructionOfNewWarehouse
|
17100000 | |
CY2021 | us-gaap |
Proceeds From Issuance Of Common Stock
ProceedsFromIssuanceOfCommonStock
|
5300000 |