2024 Q2 Form 10-K Financial Statement
#000117152024000208 Filed on May 23, 2024
Income Statement
Concept | 2024 Q2 | 2024 Q1 | 2024 |
---|---|---|---|
Revenue | $5.031M | $4.768M | $19.70M |
YoY Change | 39.63% | 30.37% | 30.82% |
Cost Of Revenue | $2.577M | $2.427M | $9.855M |
YoY Change | 41.12% | 32.46% | 33.07% |
Gross Profit | $2.454M | $2.341M | $9.845M |
YoY Change | 38.11% | 28.26% | 28.65% |
Gross Profit Margin | 48.79% | 49.1% | 49.97% |
Selling, General & Admin | $1.485M | $1.689M | $5.776M |
YoY Change | 22.46% | 41.06% | 19.85% |
% of Gross Profit | 60.49% | 72.15% | 58.68% |
Research & Development | $731.4K | $664.1K | $2.886M |
YoY Change | 11.42% | 9.54% | 34.25% |
% of Gross Profit | 29.8% | 28.37% | 29.31% |
Depreciation & Amortization | $158.5K | $168.8K | $597.2K |
YoY Change | 17.22% | 16.73% | 16.89% |
% of Gross Profit | 6.46% | 7.21% | 6.07% |
Operating Expenses | $2.216M | $2.353M | $8.662M |
YoY Change | 18.59% | 30.46% | 24.29% |
Operating Profit | $238.3K | -$12.28K | $1.182M |
YoY Change | -360.12% | -157.38% | 73.13% |
Interest Expense | $153.0K | $151.1K | $562.1K |
YoY Change | 23.75% | 83.29% | 425.72% |
% of Operating Profit | 64.21% | 47.54% | |
Other Income/Expense, Net | |||
YoY Change | |||
Pretax Income | $391.3K | $138.8K | $1.745M |
YoY Change | 1121.7% | 33.68% | 120.86% |
Income Tax | $60.47K | -$17.78K | $303.1K |
% Of Pretax Income | 15.45% | -12.81% | 17.37% |
Net Earnings | $330.8K | $156.6K | $1.441M |
YoY Change | 519.43% | 147.62% | 126.68% |
Net Earnings / Revenue | 6.58% | 3.29% | 7.32% |
Basic Earnings Per Share | $0.02 | $0.09 | |
Diluted Earnings Per Share | $0.02 | $0.01 | $0.09 |
COMMON SHARES | |||
Basic Shares Outstanding | 15.75M shares | 15.75M shares | 15.74M shares |
Diluted Shares Outstanding | 15.77M shares | 15.77M shares |
Balance Sheet
Concept | 2024 Q2 | 2024 Q1 | 2024 |
---|---|---|---|
SHORT-TERM ASSETS | |||
Cash & Short-Term Investments | $12.15M | $11.85M | $11.85M |
YoY Change | 0.08% | 3.51% | 3.51% |
Cash & Equivalents | $2.402M | $2.135M | $2.135M |
Short-Term Investments | $9.749M | $9.711M | $9.711M |
Other Short-Term Assets | $148.6K | $207.7K | $207.7K |
YoY Change | -21.5% | -18.23% | -18.23% |
Inventory | $5.479M | $5.222M | $5.222M |
Prepaid Expenses | |||
Receivables | $1.402M | $1.471M | $1.471M |
Other Receivables | $0.00 | $0.00 | $0.00 |
Total Short-Term Assets | $19.18M | $18.75M | $18.75M |
YoY Change | 11.34% | 13.1% | 13.1% |
LONG-TERM ASSETS | |||
Property, Plant & Equipment | $2.959M | $2.832M | $3.082M |
YoY Change | 2.29% | 7.89% | 7.21% |
Goodwill | |||
YoY Change | |||
Intangibles | $45.02K | $47.57K | |
YoY Change | -15.36% | -16.85% | |
Long-Term Investments | |||
YoY Change | |||
Other Assets | $1.369M | $1.256M | $1.256M |
YoY Change | 88.39% | 88.27% | 88.27% |
Total Long-Term Assets | $4.373M | $4.386M | $4.386M |
YoY Change | 19.08% | 21.85% | 21.85% |
TOTAL ASSETS | |||
Total Short-Term Assets | $19.18M | $18.75M | $18.75M |
Total Long-Term Assets | $4.373M | $4.386M | $4.386M |
Total Assets | $23.55M | $23.13M | $23.13M |
YoY Change | 12.7% | 14.66% | 14.66% |
SHORT-TERM LIABILITIES | |||
YoY Change | |||
Accounts Payable | $1.021M | $1.050M | $1.050M |
YoY Change | 9.33% | 29.46% | 29.46% |
Accrued Expenses | $1.712M | $1.739M | $1.739M |
YoY Change | 27.81% | 21.86% | 21.86% |
Deferred Revenue | $3.340M | $3.420M | |
YoY Change | -7.5% | 20.49% | |
Short-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Long-Term Debt Due | |||
YoY Change | |||
Total Short-Term Liabilities | $6.690M | $6.624M | $6.624M |
YoY Change | 8.86% | 21.36% | 21.36% |
LONG-TERM LIABILITIES | |||
Long-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Other Long-Term Liabilities | |||
YoY Change | |||
Total Long-Term Liabilities | $0.00 | $0.00 | $0.00 |
YoY Change | |||
TOTAL LIABILITIES | |||
Total Short-Term Liabilities | $6.690M | $6.624M | $6.624M |
Total Long-Term Liabilities | $0.00 | $0.00 | $0.00 |
Total Liabilities | $6.890M | $6.853M | $6.853M |
YoY Change | 11.78% | 23.69% | 23.69% |
SHAREHOLDERS EQUITY | |||
Retained Earnings | $6.682M | $6.351M | |
YoY Change | 34.63% | 29.36% | |
Common Stock | $157.5K | $157.5K | |
YoY Change | 0.06% | 0.06% | |
Preferred Stock | |||
YoY Change | |||
Treasury Stock (at cost) | |||
YoY Change | |||
Treasury Stock Shares | |||
Shareholders Equity | $16.66M | $16.28M | $16.28M |
YoY Change | |||
Total Liabilities & Shareholders Equity | $23.55M | $23.13M | $23.13M |
YoY Change | 12.7% | 14.66% | 14.66% |
Cashflow Statement
Concept | 2024 Q2 | 2024 Q1 | 2024 |
---|---|---|---|
OPERATING ACTIVITIES | |||
Net Income | $330.8K | $156.6K | $1.441M |
YoY Change | 519.43% | 147.62% | 126.68% |
Depreciation, Depletion And Amortization | $158.5K | $168.8K | $597.2K |
YoY Change | 17.22% | 16.73% | 16.89% |
Cash From Operating Activities | $328.0K | -$278.5K | $1.164M |
YoY Change | -60.4% | -184.26% | -12.16% |
INVESTING ACTIVITIES | |||
Capital Expenditures | $32.97K | $468.1K | $794.7K |
YoY Change | -77.87% | 228.84% | 42.96% |
Acquisitions | |||
YoY Change | |||
Other Investing Activities | -$27.77K | -$100.6K | -$1.589M |
YoY Change | -110.65% | 950.99% | -29.54% |
Cash From Investing Activities | -$60.74K | -$568.7K | -$2.384M |
YoY Change | -154.4% | 274.34% | -15.2% |
FINANCING ACTIVITIES | |||
Cash Dividend Paid | |||
YoY Change | |||
Common Stock Issuance & Retirement, Net | |||
YoY Change | |||
Debt Paid & Issued, Net | |||
YoY Change | |||
Cash From Financing Activities | |||
YoY Change | |||
NET CHANGE | |||
Cash From Operating Activities | $328.0K | -278.5K | $1.164M |
Cash From Investing Activities | -$60.74K | -568.7K | -$2.384M |
Cash From Financing Activities | |||
Net Change In Cash | $267.2K | -847.1K | -$1.220M |
YoY Change | -71.56% | -574.43% | -17.91% |
FREE CASH FLOW | |||
Cash From Operating Activities | $328.0K | -$278.5K | $1.164M |
Capital Expenditures | $32.97K | $468.1K | $794.7K |
Free Cash Flow | $295.0K | -$746.6K | $369.2K |
YoY Change | -56.56% | -496.83% | -52.0% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2024 | dei |
Document Fiscal Year Focus
DocumentFiscalYearFocus
|
2024 | |
CY2024 | dei |
Document Fiscal Period Focus
DocumentFiscalPeriodFocus
|
FY | |
CY2024 | dei |
Entity Central Index Key
EntityCentralIndexKey
|
0000806172 | |
CY2023 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
usd | |
CY2024 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
usd | |
CY2024 | sotk |
Accounts Receivable Reserve
AccountsReceivableReserve
|
usd | |
CY2024 | us-gaap |
Interest Paid Net
InterestPaidNet
|
usd | |
CY2023 | us-gaap |
Interest Paid Net
InterestPaidNet
|
usd | |
CY2023Q1 | us-gaap |
Accrued Payroll Taxes Current
AccruedPayrollTaxesCurrent
|
usd | |
CY2024 | dei |
Document Type
DocumentType
|
10-K | |
CY2024 | dei |
Document Annual Report
DocumentAnnualReport
|
true | |
CY2024 | dei |
Document Transition Report
DocumentTransitionReport
|
false | |
CY2024 | dei |
Current Fiscal Year End Date
CurrentFiscalYearEndDate
|
--02-28 | |
CY2024 | dei |
Entity Well Known Seasoned Issuer
EntityWellKnownSeasonedIssuer
|
No | |
CY2024 | dei |
Entity Voluntary Filers
EntityVoluntaryFilers
|
No | |
CY2024 | dei |
Entity Current Reporting Status
EntityCurrentReportingStatus
|
Yes | |
CY2024 | dei |
Entity Interactive Data Current
EntityInteractiveDataCurrent
|
Yes | |
CY2024 | dei |
Entity Filer Category
EntityFilerCategory
|
Non-accelerated Filer | |
CY2024 | dei |
Entity Small Business
EntitySmallBusiness
|
true | |
CY2024 | dei |
Entity Emerging Growth Company
EntityEmergingGrowthCompany
|
false | |
CY2024 | dei |
Icfr Auditor Attestation Flag
IcfrAuditorAttestationFlag
|
false | |
CY2024 | dei |
Document Fin Stmt Error Correction Flag
DocumentFinStmtErrorCorrectionFlag
|
false | |
CY2024 | dei |
Entity Shell Company
EntityShellCompany
|
false | |
CY2023Q3 | dei |
Entity Public Float
EntityPublicFloat
|
72065185 | usd |
CY2024Q2 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
15750880 | shares |
CY2024Q1 | ecd |
Rule10b51 Arr Adopted Flag
Rule10b51ArrAdoptedFlag
|
false | |
CY2024Q1 | ecd |
Non Rule10b51 Arr Adopted Flag
NonRule10b51ArrAdoptedFlag
|
false | |
CY2024Q1 | ecd |
Rule10b51 Arr Trmntd Flag
Rule10b51ArrTrmntdFlag
|
false | |
CY2024Q1 | ecd |
Non Rule10b51 Arr Trmntd Flag
NonRule10b51ArrTrmntdFlag
|
false | |
CY2024 | dei |
Auditor Firm
AuditorFirmId
|
688 | |
CY2024 | dei |
Auditor Name
AuditorName
|
Marcum LLP | |
CY2024 | dei |
Auditor Location
AuditorLocation
|
East Hanover, NJ | |
CY2024Q1 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
2134786 | usd |
CY2023Q1 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
3354601 | usd |
CY2024Q1 | us-gaap |
Marketable Securities Current
MarketableSecuritiesCurrent
|
9711351 | usd |
CY2023Q1 | us-gaap |
Marketable Securities Current
MarketableSecuritiesCurrent
|
8090000 | usd |
CY2024Q1 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
12225 | usd |
CY2023Q1 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
12225 | usd |
CY2024Q1 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
1470711 | usd |
CY2023Q1 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
1633866 | usd |
CY2024Q1 | us-gaap |
Inventory Net
InventoryNet
|
5221980 | usd |
CY2023Q1 | us-gaap |
Inventory Net
InventoryNet
|
3242909 | usd |
CY2024Q1 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
207738 | usd |
CY2023Q1 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
254046 | usd |
CY2024Q1 | us-gaap |
Assets Current
AssetsCurrent
|
18746566 | usd |
CY2023Q1 | us-gaap |
Assets Current
AssetsCurrent
|
16575422 | usd |
CY2024Q1 | us-gaap |
Land
Land
|
250000 | usd |
CY2023Q1 | us-gaap |
Land
Land
|
250000 | usd |
CY2024Q1 | sotk |
Buildings Equipment Furnishings And Leasehold Improvements Net
BuildingsEquipmentFurnishingsAndLeaseholdImprovementsNet
|
2832156 | usd |
CY2023Q1 | sotk |
Buildings Equipment Furnishings And Leasehold Improvements Net
BuildingsEquipmentFurnishingsAndLeaseholdImprovementsNet
|
2624996 | usd |
CY2024Q1 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
47566 | usd |
CY2023Q1 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
57202 | usd |
CY2024Q1 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
1255977 | usd |
CY2023Q1 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
667098 | usd |
CY2024Q1 | us-gaap |
Assets
Assets
|
23132265 | usd |
CY2023Q1 | us-gaap |
Assets
Assets
|
20174718 | usd |
CY2024Q1 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
1049742 | usd |
CY2023Q1 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
810863 | usd |
CY2024Q1 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
1739478 | usd |
CY2023Q1 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
1427446 | usd |
CY2024Q1 | sotk |
Customer Deposits
CustomerDeposits
|
3419706 | usd |
CY2023Q1 | sotk |
Customer Deposits
CustomerDeposits
|
2838165 | usd |
CY2024Q1 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
414807 | usd |
CY2023Q1 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
381421 | usd |
CY2024Q1 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
6623733 | usd |
CY2023Q1 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
5457895 | usd |
CY2024Q1 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
229534 | usd |
CY2023Q1 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
82865 | usd |
CY2024Q1 | us-gaap |
Liabilities
Liabilities
|
6853267 | usd |
CY2023Q1 | us-gaap |
Liabilities
Liabilities
|
5540760 | usd |
CY2024Q1 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q1 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2024Q1 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
25000000 | shares |
CY2023Q1 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
25000000 | shares |
CY2024Q1 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
15750880 | shares |
CY2024Q1 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
15750880 | shares |
CY2023Q1 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
15742073 | shares |
CY2023Q1 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
15742073 | shares |
CY2024Q1 | us-gaap |
Common Stock Value
CommonStockValue
|
157509 | usd |
CY2023Q1 | us-gaap |
Common Stock Value
CommonStockValue
|
157421 | usd |
CY2024Q1 | us-gaap |
Additional Paid In Capital
AdditionalPaidInCapital
|
9770387 | usd |
CY2023Q1 | us-gaap |
Additional Paid In Capital
AdditionalPaidInCapital
|
9566898 | usd |
CY2024Q1 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
6351102 | usd |
CY2023Q1 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
4909639 | usd |
CY2024Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
16278998 | usd |
CY2023Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
14633958 | usd |
CY2024Q1 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
23132265 | usd |
CY2023Q1 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
20174718 | usd |
CY2024 | us-gaap |
Revenues
Revenues
|
19699886 | usd |
CY2023 | us-gaap |
Revenues
Revenues
|
15058203 | usd |
CY2024 | us-gaap |
Cost Of Revenue
CostOfRevenue
|
9855311 | usd |
CY2023 | us-gaap |
Cost Of Revenue
CostOfRevenue
|
7406196 | usd |
CY2024 | us-gaap |
Gross Profit
GrossProfit
|
9844575 | usd |
CY2023 | us-gaap |
Gross Profit
GrossProfit
|
7652007 | usd |
CY2024 | us-gaap |
Research And Development Expense
ResearchAndDevelopmentExpense
|
2885773 | usd |
CY2023 | us-gaap |
Research And Development Expense
ResearchAndDevelopmentExpense
|
2149525 | usd |
CY2024 | us-gaap |
Selling And Marketing Expense
SellingAndMarketingExpense
|
3695870 | usd |
CY2023 | us-gaap |
Selling And Marketing Expense
SellingAndMarketingExpense
|
3169730 | usd |
CY2024 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
2080447 | usd |
CY2023 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
1649761 | usd |
CY2024 | us-gaap |
Operating Expenses
OperatingExpenses
|
8662090 | usd |
CY2023 | us-gaap |
Operating Expenses
OperatingExpenses
|
6969016 | usd |
CY2023 | us-gaap |
Investment Income Interest And Dividend
InvestmentIncomeInterestAndDividend
|
140042 | usd |
CY2024 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
303117 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
154009 | usd |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
1441463 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
635905 | usd |
CY2024 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.09 | |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.04 | |
CY2024 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.09 | |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.04 | |
CY2024 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
15743763 | shares |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
15735451 | shares |
CY2024 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
15774007 | shares |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
15769499 | shares |
CY2022Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
13741313 | usd |
CY2023 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
256740 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
635905 | usd |
CY2023Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
14633958 | usd |
CY2024 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
203577 | usd |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
1441463 | usd |
CY2024Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
16278998 | usd |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
1441463 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
635905 | usd |
CY2024 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
597166 | usd |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
510868 | usd |
CY2024 | us-gaap |
Stock Option Plan Expense
StockOptionPlanExpense
|
203577 | usd |
CY2023 | us-gaap |
Stock Option Plan Expense
StockOptionPlanExpense
|
256740 | usd |
CY2023 | sotk |
Accounts Receivable Reserve
AccountsReceivableReserve
|
43898 | usd |
CY2024 | us-gaap |
Inventory Lifo Reserve Period Charge
InventoryLIFOReservePeriodCharge
|
47875 | usd |
CY2023 | us-gaap |
Inventory Lifo Reserve Period Charge
InventoryLIFOReservePeriodCharge
|
4864 | usd |
CY2024 | us-gaap |
Marketable Securities Unrealized Gain Loss
MarketableSecuritiesUnrealizedGainLoss
|
32360 | usd |
CY2023 | us-gaap |
Marketable Securities Unrealized Gain Loss
MarketableSecuritiesUnrealizedGainLoss
|
-33119 | usd |
CY2024 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-442210 | usd |
CY2023 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-512337 | usd |
CY2024 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
-163155 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
497463 | usd |
CY2024 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
2026946 | usd |
CY2023 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
874531 | usd |
CY2024 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-46308 | usd |
CY2023 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-69258 | usd |
CY2024 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
238879 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
126352 | usd |
CY2024 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
312032 | usd |
CY2023 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
-376582 | usd |
CY2024 | sotk |
Increase Decrease In Customer Deposit
IncreaseDecreaseInCustomerDeposit
|
581541 | usd |
CY2023 | sotk |
Increase Decrease In Customer Deposit
IncreaseDecreaseInCustomerDeposit
|
1670197 | usd |
CY2024 | us-gaap |
Increase Decrease In Accrued Taxes Payable
IncreaseDecreaseInAccruedTaxesPayable
|
33386 | usd |
CY2023 | us-gaap |
Increase Decrease In Accrued Taxes Payable
IncreaseDecreaseInAccruedTaxesPayable
|
322547 | usd |
CY2024 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
1163866 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
1325039 | usd |
CY2024 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
794690 | usd |
CY2023 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
555867 | usd |
CY2024 | sotk |
Sale Of Marketable Securities
SaleOfMarketableSecurities
|
20237051 | usd |
CY2023 | sotk |
Sale Of Marketable Securities
SaleOfMarketableSecurities
|
14329159 | usd |
CY2024 | us-gaap |
Payments To Acquire Marketable Securities
PaymentsToAcquireMarketableSecurities
|
21826042 | usd |
CY2023 | us-gaap |
Payments To Acquire Marketable Securities
PaymentsToAcquireMarketableSecurities
|
16584288 | usd |
CY2024 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-2383681 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-2810996 | usd |
CY2024 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
-1219815 | usd |
CY2023 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
-1485957 | usd |
CY2023Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
3354601 | usd |
CY2022Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
4840558 | usd |
CY2024Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
2134786 | usd |
CY2023Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
3354601 | usd |
CY2024 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
712092 | usd |
CY2023 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
363590 | usd |
CY2024 | us-gaap |
Advertising Expense
AdvertisingExpense
|
371000 | usd |
CY2023 | us-gaap |
Advertising Expense
AdvertisingExpense
|
297500 | usd |
CY2024Q1 | us-gaap |
Cash Uninsured Amount
CashUninsuredAmount
|
1819000 | usd |
CY2024Q1 | us-gaap |
Marketable Securities Current
MarketableSecuritiesCurrent
|
9711351 | usd |
CY2023Q1 | us-gaap |
Marketable Securities Current
MarketableSecuritiesCurrent
|
8090000 | usd |
CY2024Q1 | us-gaap |
Marketable Securities Current
MarketableSecuritiesCurrent
|
9711351 | usd |
CY2023Q1 | us-gaap |
Marketable Securities Current
MarketableSecuritiesCurrent
|
8090000 | usd |
CY2024Q1 | us-gaap |
Liability For Uncertain Tax Positions Current
LiabilityForUncertainTaxPositionsCurrent
|
0 | usd |
CY2023Q1 | us-gaap |
Liability For Uncertain Tax Positions Current
LiabilityForUncertainTaxPositionsCurrent
|
0 | usd |
CY2024 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
16434 | usd |
CY2023 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
18814 | usd |
CY2024Q1 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
212861 | usd |
CY2023Q1 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
202681 | usd |
CY2024Q1 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
|
16000 | usd |
CY2024Q1 | us-gaap |
Property Plant And Equipment Useful Life
PropertyPlantAndEquipmentUsefulLife
|
P40Y | |
CY2024Q1 | us-gaap |
Land
Land
|
250000 | usd |
CY2024 | us-gaap |
Line Of Credit Facility Collateral Fees Amount
LineOfCreditFacilityCollateralFeesAmount
|
72000 | usd |
CY2024 | us-gaap |
Impairment Of Long Lived Assets Held For Use
ImpairmentOfLongLivedAssetsHeldForUse
|
0 | usd |
CY2023 | us-gaap |
Impairment Of Long Lived Assets Held For Use
ImpairmentOfLongLivedAssetsHeldForUse
|
0 | usd |
CY2024 | us-gaap |
Use Of Estimates
UseOfEstimates
|
<p id="xdx_848_eus-gaap--UseOfEstimates_z4xezaCORxxc" style="font: 11pt Cambria,serif; margin: 0; text-align: justify"><b><i><span id="xdx_861_zEK5rdj0YbNa">Management Estimates</span></i></b><i> - </i>The preparation of the consolidated financial statements in conformity with 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 consolidated financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.</p> <p style="font: 11pt Cambria,serif; margin: 0; text-align: justify"><b><i> </i></b></p> | |
CY2024 | us-gaap |
Other Research And Development Expense
OtherResearchAndDevelopmentExpense
|
2886000 | usd |
CY2023 | us-gaap |
Other Research And Development Expense
OtherResearchAndDevelopmentExpense
|
2149000 | usd |
CY2024Q1 | sotk |
Cash Deposits
CashDeposits
|
3420000 | usd |
CY2024Q1 | us-gaap |
Line Of Credit
LineOfCredit
|
72000 | usd |
CY2023Q1 | sotk |
Cash Deposits
CashDeposits
|
2838000 | usd |
CY2023Q1 | us-gaap |
Line Of Credit
LineOfCredit
|
145000 | usd |
CY2023 | us-gaap |
Line Of Credit Facility Collateral Fees Amount
LineOfCreditFacilityCollateralFeesAmount
|
145000 | usd |
CY2022Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
253710 | shares |
CY2022Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
61690 | shares |
CY2022Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
4.46 | |
CY2022Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
3.53 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P8Y11M8D | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Gross
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
|
44739 | shares |
CY2023 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Grants In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
|
5.71 | |
CY2023 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
16973 | shares |
CY2023 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
1.77 | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures And Expirations In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
|
30717 | shares |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures And Expirations In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
|
4.66 | |
CY2023Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
250759 | shares |
CY2023Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
133609 | shares |
CY2023Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
4.84 | |
CY2023Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
4.62 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P8Y6M7D | |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Gross
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
|
73193 | shares |
CY2024 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Grants In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
|
5.02 | |
CY2024 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
19701 | shares |
CY2024 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
3.62 | |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures And Expirations In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
|
8709 | shares |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures And Expirations In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
|
4.20 | |
CY2024Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
295542 | shares |
CY2024Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
181376 | shares |
CY2024Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
4.99 | |
CY2024Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
4.89 | |
CY2024 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P8Y14D | |
CY2024Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
167709 | usd |
CY2024 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
203577 | usd |
CY2023 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
256740 | usd |
CY2024Q1 | us-gaap |
Employee Service Share Based Compensation Nonvested Awards Total Compensation Cost Not Yet Recognized Stock Options
EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
|
298000 | usd |
CY2024 | us-gaap |
Employee Service Share Based Compensation Nonvested Awards Total Compensation Cost Not Yet Recognized Period For Recognition1
EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
|
P3Y | |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
8807 | shares |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Risk Free Interest Rate Minimum
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum
|
0.0282 | pure |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Risk Free Interest Rate Maximum
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum
|
0.0439 | pure |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Risk Free Interest Rate Minimum
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum
|
0.0282 | pure |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Risk Free Interest Rate Maximum
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum
|
0.0402 | pure |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Volatility Rate Minimum
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum
|
0.5502 | pure |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Volatility Rate Maximum
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum
|
0.6248 | pure |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Volatility Rate Minimum
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum
|
0.5502 | pure |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Volatility Rate Maximum
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum
|
0.6201 | pure |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Dividend Rate
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
|
0 | pure |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Expected Dividend Rate
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
|
0 | pure |
CY2024Q1 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
2270567 | usd |
CY2023Q1 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
1868689 | usd |
CY2024Q1 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
1785952 | usd |
CY2023Q1 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
613915 | usd |
CY2024Q1 | us-gaap |
Inventory Work In Process
InventoryWorkInProcess
|
1165461 | usd |
CY2023Q1 | us-gaap |
Inventory Work In Process
InventoryWorkInProcess
|
760305 | usd |
CY2024Q1 | us-gaap |
Inventory Gross
InventoryGross
|
5221980 | usd |
CY2023Q1 | us-gaap |
Inventory Gross
InventoryGross
|
3242909 | usd |
CY2024Q1 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
380400 | usd |
CY2023Q1 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
332525 | usd |
CY2024Q1 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
9722595 | usd |
CY2023Q1 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
8934703 | usd |
CY2024Q1 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
6890439 | usd |
CY2023Q1 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
6309707 | usd |
CY2024Q1 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
2832156 | usd |
CY2023Q1 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
2624996 | usd |
CY2024 | us-gaap |
Depreciation
Depreciation
|
580732 | usd |
CY2023 | us-gaap |
Depreciation
Depreciation
|
492055 | usd |
CY2024Q1 | us-gaap |
Accrued Salaries Current
AccruedSalariesCurrent
|
579757 | usd |
CY2023Q1 | us-gaap |
Accrued Salaries Current
AccruedSalariesCurrent
|
352619 | usd |
CY2024Q1 | us-gaap |
Product Warranty Accrual
ProductWarrantyAccrual
|
524875 | usd |
CY2023Q1 | us-gaap |
Product Warranty Accrual
ProductWarrantyAccrual
|
500650 | usd |
CY2024Q1 | us-gaap |
Accrued Payroll Taxes Current
AccruedPayrollTaxesCurrent
|
152547 | usd |
CY2024Q1 | us-gaap |
Accrued Sales Commission Current And Noncurrent
AccruedSalesCommissionCurrentAndNoncurrent
|
133771 | usd |
CY2023Q1 | us-gaap |
Accrued Sales Commission Current And Noncurrent
AccruedSalesCommissionCurrentAndNoncurrent
|
157927 | usd |
CY2024Q1 | us-gaap |
Accrued Professional Fees Current And Noncurrent
AccruedProfessionalFeesCurrentAndNoncurrent
|
74826 | usd |
CY2023Q1 | us-gaap |
Accrued Professional Fees Current And Noncurrent
AccruedProfessionalFeesCurrentAndNoncurrent
|
100921 | usd |
CY2024Q1 | us-gaap |
Other Accrued Liabilities Current And Noncurrent
OtherAccruedLiabilitiesCurrentAndNoncurrent
|
273702 | usd |
CY2023Q1 | us-gaap |
Other Accrued Liabilities Current And Noncurrent
OtherAccruedLiabilitiesCurrentAndNoncurrent
|
315329 | usd |
CY2024Q1 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
1739478 | usd |
CY2023Q1 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
1427446 | usd |
CY2024 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
716003 | usd |
CY2023 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
438263 | usd |
CY2024 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
123743 | usd |
CY2023 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
83525 | usd |
CY2024 | us-gaap |
Current Federal State And Local Tax Expense Benefit
CurrentFederalStateAndLocalTaxExpenseBenefit
|
839746 | usd |
CY2023 | us-gaap |
Current Federal State And Local Tax Expense Benefit
CurrentFederalStateAndLocalTaxExpenseBenefit
|
521788 | usd |
CY2024 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-471396 | usd |
CY2023 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-321458 | usd |
CY2024 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-65233 | usd |
CY2023 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-46321 | usd |
CY2024 | us-gaap |
Deferred Federal State And Local Tax Expense Benefit
DeferredFederalStateAndLocalTaxExpenseBenefit
|
-536629 | usd |
CY2023 | us-gaap |
Deferred Federal State And Local Tax Expense Benefit
DeferredFederalStateAndLocalTaxExpenseBenefit
|
-367779 | usd |
CY2024 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
303117 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
154009 | usd |
CY2024Q1 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
91000 | usd |
CY2023Q1 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
76000 | usd |
CY2024Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Allowance For Doubtful Accounts
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
|
3000 | usd |
CY2023Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Allowance For Doubtful Accounts
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
|
3000 | usd |
CY2024Q1 | sotk |
Capitalized Rd Expenses Irc Section174
CapitalizedRdExpensesIrcSection174
|
985000 | usd |
CY2023Q1 | sotk |
Capitalized Rd Expenses Irc Section174
CapitalizedRdExpensesIrcSection174
|
441000 | usd |
CY2024Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Other
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther
|
177000 | usd |
CY2023Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Other
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther
|
147000 | usd |
CY2024Q1 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
1256000 | usd |
CY2023Q1 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
667000 | usd |
CY2024Q1 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
230000 | usd |
CY2023Q1 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
83000 | usd |
CY2024Q1 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
230000 | usd |
CY2023Q1 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
83000 | usd |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
1441463 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
635905 | usd |
CY2024 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
15743763 | shares |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
15735451 | shares |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
|
30244 | shares |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
|
34048 | shares |
CY2024 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
15774007 | shares |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
15769499 | shares |
CY2024 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.09 | |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.04 | |
CY2024 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.09 | |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.04 | |
CY2024 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
8822000 | usd |
CY2023 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
8254000 | usd |