2024 Q2 Form 10-K Financial Statement
#000165495424006855 Filed on May 23, 2024
Income Statement
Concept | 2024 Q2 | 2023 Q4 | 2023 |
---|---|---|---|
Revenue | $19.64M | $16.39M | $59.58M |
YoY Change | 33.62% | 13.13% | 18.85% |
Cost Of Revenue | $14.51M | $13.27M | $48.93M |
YoY Change | 12.35% | 10.74% | 20.33% |
Gross Profit | $5.133M | $3.123M | $10.65M |
YoY Change | 187.4% | 24.52% | 12.49% |
Gross Profit Margin | 26.14% | 19.06% | 17.88% |
Selling, General & Admin | $2.460M | $2.581M | $9.534M |
YoY Change | -11.1% | -0.04% | 10.67% |
% of Gross Profit | 47.93% | 82.64% | 89.5% |
Research & Development | |||
YoY Change | |||
% of Gross Profit | |||
Depreciation & Amortization | $653.0K | $599.0K | $2.399M |
YoY Change | 10.68% | -20.56% | -16.73% |
% of Gross Profit | 12.72% | 19.18% | 22.52% |
Operating Expenses | $2.460M | $2.581M | $9.534M |
YoY Change | -11.1% | -0.04% | 10.67% |
Operating Profit | $2.673M | $542.0K | $1.118M |
YoY Change | -372.48% | -832.43% | 30.91% |
Interest Expense | $59.00K | -$56.00K | $255.0K |
YoY Change | -7.81% | -17.65% | -203.66% |
% of Operating Profit | 2.21% | -10.33% | 22.81% |
Other Income/Expense, Net | -$60.00K | $18.00K | $205.0K |
YoY Change | -167.42% | -10.0% | -10.09% |
Pretax Income | $2.613M | $598.0K | $1.323M |
YoY Change | -392.94% | -658.88% | 40.0% |
Income Tax | $632.0K | $368.0K | $528.0K |
% Of Pretax Income | 24.19% | 61.54% | 39.91% |
Net Earnings | $1.981M | $230.0K | $795.0K |
YoY Change | -353.32% | 5650.0% | -0.63% |
Net Earnings / Revenue | 10.09% | 1.4% | 1.33% |
Basic Earnings Per Share | $0.37 | $0.15 | |
Diluted Earnings Per Share | $0.37 | $0.04 | $0.15 |
COMMON SHARES | |||
Basic Shares Outstanding | 5.266M shares | 5.257M shares | 5.258M shares |
Diluted Shares Outstanding | 5.323K shares | 5.292M shares |
Balance Sheet
Concept | 2024 Q2 | 2023 Q4 | 2023 |
---|---|---|---|
SHORT-TERM ASSETS | |||
Cash & Short-Term Investments | $7.288M | $9.175M | $9.175M |
YoY Change | 54.08% | 36.41% | 36.41% |
Cash & Equivalents | $7.288M | $9.175M | |
Short-Term Investments | |||
Other Short-Term Assets | $1.651M | $1.266M | $1.266M |
YoY Change | 36.45% | 79.32% | 79.32% |
Inventory | $6.667M | $5.150M | $5.150M |
Prepaid Expenses | $1.651M | $1.266M | |
Receivables | $17.18M | $17.73M | $17.73M |
Other Receivables | $0.00 | $0.00 | $0.00 |
Total Short-Term Assets | $33.71M | $33.33M | $33.33M |
YoY Change | 18.39% | 15.15% | 15.15% |
LONG-TERM ASSETS | |||
Property, Plant & Equipment | $29.88M | $27.68M | $27.68M |
YoY Change | 11.15% | 10.17% | 10.17% |
Goodwill | |||
YoY Change | |||
Intangibles | |||
YoY Change | |||
Long-Term Investments | |||
YoY Change | |||
Other Assets | $451.0K | $343.0K | $343.0K |
YoY Change | 25.28% | 37.75% | 37.75% |
Total Long-Term Assets | $30.34M | $28.02M | $28.02M |
YoY Change | 11.35% | 10.44% | 10.44% |
TOTAL ASSETS | |||
Total Short-Term Assets | $33.71M | $33.33M | $33.33M |
Total Long-Term Assets | $30.34M | $28.02M | $28.02M |
Total Assets | $64.05M | $61.35M | $61.35M |
YoY Change | 14.95% | 12.95% | 12.95% |
SHORT-TERM LIABILITIES | |||
YoY Change | |||
Accounts Payable | $5.399M | $7.336M | $7.336M |
YoY Change | -5.01% | 26.13% | 26.13% |
Accrued Expenses | $1.105M | $831.0K | $2.077M |
YoY Change | -35.76% | -50.06% | 24.82% |
Deferred Revenue | |||
YoY Change | |||
Short-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Long-Term Debt Due | $644.0K | $636.0K | $636.0K |
YoY Change | 2.22% | 2.91% | 2.91% |
Total Short-Term Liabilities | $14.88M | $16.02M | $16.02M |
YoY Change | 14.4% | 42.71% | 42.71% |
LONG-TERM LIABILITIES | |||
Long-Term Debt | $4.768M | $5.092M | $5.092M |
YoY Change | -11.87% | -11.13% | -11.13% |
Other Long-Term Liabilities | $5.567M | $4.426M | $4.426M |
YoY Change | 109.29% | 99.46% | 99.46% |
Total Long-Term Liabilities | $10.34M | $9.518M | $9.518M |
YoY Change | 28.07% | 19.74% | 19.74% |
TOTAL LIABILITIES | |||
Total Short-Term Liabilities | $14.88M | $16.02M | $16.02M |
Total Long-Term Liabilities | $10.34M | $9.518M | $9.518M |
Total Liabilities | $26.86M | $27.19M | $27.19M |
YoY Change | 15.51% | 27.89% | 27.89% |
SHAREHOLDERS EQUITY | |||
Retained Earnings | $29.52M | $26.40M | |
YoY Change | 18.57% | 2.85% | |
Common Stock | $54.00K | $54.00K | |
YoY Change | 1.89% | 1.89% | |
Preferred Stock | |||
YoY Change | |||
Treasury Stock (at cost) | $102.0K | ||
YoY Change | 0.0% | ||
Treasury Stock Shares | |||
Shareholders Equity | $37.18M | $34.16M | $34.16M |
YoY Change | |||
Total Liabilities & Shareholders Equity | $64.05M | $61.35M | $61.35M |
YoY Change | 14.95% | 12.95% | 12.95% |
Cashflow Statement
Concept | 2024 Q2 | 2023 Q4 | 2023 |
---|---|---|---|
OPERATING ACTIVITIES | |||
Net Income | $1.981M | $230.0K | $795.0K |
YoY Change | -353.32% | 5650.0% | -0.63% |
Depreciation, Depletion And Amortization | $653.0K | $599.0K | $2.399M |
YoY Change | 10.68% | -20.56% | -16.73% |
Cash From Operating Activities | $2.707M | $4.272M | $7.732M |
YoY Change | 2.54% | -242.35% | -222.07% |
INVESTING ACTIVITIES | |||
Capital Expenditures | $1.709M | $880.0K | $5.010M |
YoY Change | -5.58% | -188.89% | 82.25% |
Acquisitions | |||
YoY Change | |||
Other Investing Activities | -$352.0K | $96.00K | $346.0K |
YoY Change | -393.33% | -105.07% | 193.22% |
Cash From Investing Activities | -$2.061M | -$784.0K | -$4.664M |
YoY Change | 21.24% | -13.27% | 77.27% |
FINANCING ACTIVITIES | |||
Cash Dividend Paid | |||
YoY Change | |||
Common Stock Issuance & Retirement, Net | |||
YoY Change | |||
Debt Paid & Issued, Net | |||
YoY Change | |||
Cash From Financing Activities | -159.0K | -159.0K | -$619.0K |
YoY Change | -0.63% | -10.17% | -128.15% |
NET CHANGE | |||
Cash From Operating Activities | 2.707M | 4.272M | $7.732M |
Cash From Investing Activities | -2.061M | -784.0K | -$4.664M |
Cash From Financing Activities | -159.0K | -159.0K | -$619.0K |
Net Change In Cash | 487.0K | 3.329M | $2.449M |
YoY Change | -37.56% | -181.55% | -136.2% |
FREE CASH FLOW | |||
Cash From Operating Activities | $2.707M | $4.272M | $7.732M |
Capital Expenditures | $1.709M | $880.0K | $5.010M |
Free Cash Flow | $998.0K | $3.392M | $2.722M |
YoY Change | 20.24% | -268.67% | -129.97% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2023 | dei |
Entity Central Index Key
EntityCentralIndexKey
|
0000924719 | |
CY2023 | dei |
Amendment Flag
AmendmentFlag
|
false | |
CY2023 | dei |
Current Fiscal Year End Date
CurrentFiscalYearEndDate
|
--12-31 | |
CY2023 | dei |
Document Fiscal Period Focus
DocumentFiscalPeriodFocus
|
FY | |
CY2023 | dei |
Document Fiscal Year Focus
DocumentFiscalYearFocus
|
2023 | |
CY2023 | dei |
Document Fin Stmt Error Correction Flag
DocumentFinStmtErrorCorrectionFlag
|
false | |
CY2022Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2022Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
1000000 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | shares |
CY2022Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
0 | shares |
CY2022Q4 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
0 | shares |
CY2022Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2022Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
8000000 | shares |
CY2022Q4 | smid |
Treasury Stocks Shares
TreasuryStocksShares
|
40920 | shares |
CY2023 | smid |
Royality Term Period
RoyalityTermPeriod
|
P5Y | |
CY2022Q4 | us-gaap |
Deferred Compensation Equity
DeferredCompensationEquity
|
0 | usd |
CY2023 | dei |
Document Type
DocumentType
|
10-K | |
CY2023 | dei |
Document Annual Report
DocumentAnnualReport
|
true | |
CY2023 | dei |
Document Period End Date
DocumentPeriodEndDate
|
2023-12-31 | |
CY2023 | dei |
Document Transition Report
DocumentTransitionReport
|
false | |
CY2023 | dei |
Entity File Number
EntityFileNumber
|
1-13752 | |
CY2023 | dei |
Entity Registrant Name
EntityRegistrantName
|
SMITH-MIDLAND CORPORATION | |
CY2023 | dei |
Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
|
DE | |
CY2023 | dei |
Entity Tax Identification Number
EntityTaxIdentificationNumber
|
54-1727060 | |
CY2023 | dei |
Entity Address Address Line1
EntityAddressAddressLine1
|
P.O. Box 300 | |
CY2023 | dei |
Entity Address Address Line2
EntityAddressAddressLine2
|
5119 Catlett Road | |
CY2023 | dei |
Entity Address City Or Town
EntityAddressCityOrTown
|
Midland | |
CY2023 | dei |
Entity Address State Or Province
EntityAddressStateOrProvince
|
VA | |
CY2023 | dei |
Entity Address Postal Zip Code
EntityAddressPostalZipCode
|
22728 | |
CY2023 | dei |
City Area Code
CityAreaCode
|
540 | |
CY2023 | dei |
Local Phone Number
LocalPhoneNumber
|
439-3266 | |
CY2023 | dei |
Security12b Title
Security12bTitle
|
Common Stock, $0.01 par value per share | |
CY2023 | dei |
Trading Symbol
TradingSymbol
|
SMID | |
CY2023 | dei |
Security Exchange Name
SecurityExchangeName
|
NASDAQ | |
CY2023 | dei |
Entity Well Known Seasoned Issuer
EntityWellKnownSeasonedIssuer
|
No | |
CY2023 | dei |
Entity Voluntary Filers
EntityVoluntaryFilers
|
No | |
CY2023 | dei |
Entity Current Reporting Status
EntityCurrentReportingStatus
|
Yes | |
CY2023 | dei |
Entity Interactive Data Current
EntityInteractiveDataCurrent
|
Yes | |
CY2023 | dei |
Entity Filer Category
EntityFilerCategory
|
Non-accelerated Filer | |
CY2023 | dei |
Entity Small Business
EntitySmallBusiness
|
true | |
CY2023 | dei |
Entity Emerging Growth Company
EntityEmergingGrowthCompany
|
false | |
CY2023 | dei |
Icfr Auditor Attestation Flag
IcfrAuditorAttestationFlag
|
false | |
CY2023 | dei |
Entity Shell Company
EntityShellCompany
|
false | |
CY2023Q2 | dei |
Entity Public Float
EntityPublicFloat
|
73135252 | usd |
CY2024Q2 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
5266401 | shares |
CY2023 | dei |
Auditor Name
AuditorName
|
FORVIS, LLP | |
CY2023 | dei |
Auditor Firm
AuditorFirmId
|
686 | |
CY2023 | dei |
Auditor Location
AuditorLocation
|
Richmond, Virginia | |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
9175000 | usd |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
6726000 | usd |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
806000 | usd |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
781000 | usd |
CY2023Q4 | us-gaap |
Accounts Receivable Gross Current
AccountsReceivableGrossCurrent
|
17209000 | usd |
CY2022Q4 | us-gaap |
Accounts Receivable Gross Current
AccountsReceivableGrossCurrent
|
16223000 | usd |
CY2023Q4 | us-gaap |
Unbilled Receivables Current
UnbilledReceivablesCurrent
|
525000 | usd |
CY2022Q4 | us-gaap |
Unbilled Receivables Current
UnbilledReceivablesCurrent
|
990000 | usd |
CY2023Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
2329000 | usd |
CY2022Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
1776000 | usd |
CY2023Q4 | us-gaap |
Inventory Finished Goods Net Of Reserves
InventoryFinishedGoodsNetOfReserves
|
2821000 | usd |
CY2022Q4 | us-gaap |
Inventory Finished Goods Net Of Reserves
InventoryFinishedGoodsNetOfReserves
|
2042000 | usd |
CY2023Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
1266000 | usd |
CY2022Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
706000 | usd |
CY2023Q4 | us-gaap |
Prepaid Taxes
PrepaidTaxes
|
0 | usd |
CY2022Q4 | us-gaap |
Prepaid Taxes
PrepaidTaxes
|
477000 | usd |
CY2023Q4 | us-gaap |
Assets Current
AssetsCurrent
|
33325000 | usd |
CY2022Q4 | us-gaap |
Assets Current
AssetsCurrent
|
28940000 | usd |
CY2023Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
27680000 | usd |
CY2022Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
25124000 | usd |
CY2023Q4 | us-gaap |
Other Assets
OtherAssets
|
343000 | usd |
CY2022Q4 | us-gaap |
Other Assets
OtherAssets
|
249000 | usd |
CY2023Q4 | us-gaap |
Assets
Assets
|
61348000 | usd |
CY2022Q4 | us-gaap |
Assets
Assets
|
54313000 | usd |
CY2023Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
7336000 | usd |
CY2022Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
5816000 | usd |
CY2023Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
831000 | usd |
CY2022Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
799000 | usd |
CY2023Q4 | us-gaap |
Deferred Revenue Current
DeferredRevenueCurrent
|
2717000 | usd |
CY2022Q4 | us-gaap |
Deferred Revenue Current
DeferredRevenueCurrent
|
2243000 | usd |
CY2023Q4 | smid |
Accrued Compensation Current
AccruedCompensationCurrent
|
1203000 | usd |
CY2022Q4 | smid |
Accrued Compensation Current
AccruedCompensationCurrent
|
788000 | usd |
CY2023Q4 | us-gaap |
Accrued Income Taxes
AccruedIncomeTaxes
|
473000 | usd |
CY2022Q4 | us-gaap |
Accrued Income Taxes
AccruedIncomeTaxes
|
146000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
43000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
77000 | usd |
CY2023Q4 | us-gaap |
Notes Payable Current
NotesPayableCurrent
|
636000 | usd |
CY2022Q4 | us-gaap |
Notes Payable Current
NotesPayableCurrent
|
618000 | usd |
CY2023Q4 | us-gaap |
Customer Advances And Deposits
CustomerAdvancesAndDeposits
|
2779000 | usd |
CY2022Q4 | us-gaap |
Customer Advances And Deposits
CustomerAdvancesAndDeposits
|
737000 | usd |
CY2023Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
16018000 | usd |
CY2022Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
11224000 | usd |
CY2023Q4 | us-gaap |
Deferred Revenue Noncurrent
DeferredRevenueNoncurrent
|
4424000 | usd |
CY2022Q4 | us-gaap |
Deferred Revenue Noncurrent
DeferredRevenueNoncurrent
|
2174000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
2000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
45000 | usd |
CY2023Q4 | us-gaap |
Long Term Notes Payable
LongTermNotesPayable
|
5092000 | usd |
CY2022Q4 | us-gaap |
Long Term Notes Payable
LongTermNotesPayable
|
5730000 | usd |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
1651000 | usd |
CY2022Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
2085000 | usd |
CY2022Q4 | us-gaap |
Additional Paid In Capital
AdditionalPaidInCapital
|
7440000 | usd |
CY2023Q4 | smid |
Treasury Stocks Shares
TreasuryStocksShares
|
40920 | shares |
CY2023Q4 | us-gaap |
Liabilities
Liabilities
|
27187000 | usd |
CY2022Q4 | us-gaap |
Liabilities
Liabilities
|
21258000 | usd |
CY2023Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
1000000 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2022Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2023Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
8000000 | shares |
CY2023Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
5349599 | shares |
CY2022Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
5345189 | shares |
CY2023Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
5308679 | shares |
CY2022Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
5304269 | shares |
CY2023Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
54000 | usd |
CY2022Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
53000 | usd |
CY2023Q4 | us-gaap |
Additional Paid In Capital
AdditionalPaidInCapital
|
7814000 | usd |
CY2023Q4 | us-gaap |
Treasury Stock Value
TreasuryStockValue
|
102000 | usd |
CY2022Q4 | us-gaap |
Treasury Stock Value
TreasuryStockValue
|
102000 | usd |
CY2023Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
26395000 | usd |
CY2022Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
25664000 | usd |
CY2023Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
34161000 | usd |
CY2022Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
33055000 | usd |
CY2023Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
61348000 | usd |
CY2022Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
54313000 | usd |
CY2023 | smid |
Product Sales
ProductSales
|
38748000 | usd |
CY2022 | smid |
Product Sales
ProductSales
|
27821000 | usd |
CY2023 | smid |
Barrier Rentals
BarrierRentals
|
6330000 | usd |
CY2022 | smid |
Barrier Rentals
BarrierRentals
|
6545000 | usd |
CY2023 | us-gaap |
Royalty Income Nonoperating
RoyaltyIncomeNonoperating
|
2633000 | usd |
CY2022 | us-gaap |
Royalty Income Nonoperating
RoyaltyIncomeNonoperating
|
2498000 | usd |
CY2023 | smid |
Shipping And Installation Revenue
ShippingAndInstallationRevenue
|
11869000 | usd |
CY2022 | smid |
Shipping And Installation Revenue
ShippingAndInstallationRevenue
|
13267000 | usd |
CY2023 | us-gaap |
Revenues
Revenues
|
59580000 | usd |
CY2022 | us-gaap |
Revenues
Revenues
|
50131000 | usd |
CY2023 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
48928000 | usd |
CY2022 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
40662000 | usd |
CY2023 | us-gaap |
Gross Profit
GrossProfit
|
10652000 | usd |
CY2022 | us-gaap |
Gross Profit
GrossProfit
|
9469000 | usd |
CY2023 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
5990000 | usd |
CY2022 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
5551000 | usd |
CY2023 | us-gaap |
Selling And Marketing Expense
SellingAndMarketingExpense
|
3544000 | usd |
CY2022 | us-gaap |
Selling And Marketing Expense
SellingAndMarketingExpense
|
3064000 | usd |
CY2023 | us-gaap |
Operating Expenses
OperatingExpenses
|
9534000 | usd |
CY2022 | us-gaap |
Operating Expenses
OperatingExpenses
|
8615000 | usd |
CY2023 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
1118000 | usd |
CY2022 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
854000 | usd |
CY2023 | us-gaap |
Interest Expense
InterestExpense
|
255000 | usd |
CY2022 | us-gaap |
Interest Expense
InterestExpense
|
260000 | usd |
CY2023 | us-gaap |
Interest Income Domestic Deposits
InterestIncomeDomesticDeposits
|
24000 | usd |
CY2022 | us-gaap |
Interest Income Domestic Deposits
InterestIncomeDomesticDeposits
|
14000 | usd |
CY2023 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
346000 | usd |
CY2022 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
109000 | usd |
CY2023 | us-gaap |
Other Income
OtherIncome
|
90000 | usd |
CY2022 | us-gaap |
Other Income
OtherIncome
|
228000 | usd |
CY2023 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
205000 | usd |
CY2022 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
91000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
1323000 | usd |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
945000 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
528000 | usd |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
145000 | usd |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
795000 | usd |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
800000 | usd |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.15 | |
CY2022 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.15 | |
CY2021Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
31750000 | usd |
CY2022 | smid |
Vesting Of Restricted Stock
VestingOfRestrictedStock
|
505000 | usd |
CY2022 | smid |
Forfeiture Of Restricted Stock Amount
ForfeitureOfRestrictedStockAmount
|
0 | usd |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
800000 | usd |
CY2022Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
33055000 | usd |
CY2023 | smid |
Adjustment For Adoption
AdjustmentForAdoption
|
-64000 | usd |
CY2023 | smid |
Vesting Of Restricted Stock
VestingOfRestrictedStock
|
375000 | usd |
CY2023 | us-gaap |
Restricted Stock Value Shares Issued Net Of Tax Withholdings
RestrictedStockValueSharesIssuedNetOfTaxWithholdings
|
0 | usd |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
795000 | usd |
CY2023Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
34161000 | usd |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
795000 | usd |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
800000 | usd |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
2399000 | usd |
CY2022 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
2881000 | usd |
CY2023 | us-gaap |
Gain Loss On Disposition Of Assets
GainLossOnDispositionOfAssets
|
346000 | usd |
CY2022 | us-gaap |
Gain Loss On Disposition Of Assets
GainLossOnDispositionOfAssets
|
109000 | usd |
CY2023 | smid |
Allowance For Doubtful Accounts
AllowanceForDoubtfulAccounts
|
-39000 | usd |
CY2022 | smid |
Allowance For Doubtful Accounts
AllowanceForDoubtfulAccounts
|
344000 | usd |
CY2023 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
375000 | usd |
CY2022 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
505000 | usd |
CY2023 | smid |
Increase Decrease In Inventories Resve
IncreaseDecreaseInInventoriesResve
|
-19000 | usd |
CY2022 | smid |
Increase Decrease In Inventories Resve
IncreaseDecreaseInInventoriesResve
|
-14000 | usd |
CY2023 | us-gaap |
Increase Decrease In Deferred Income Taxes
IncreaseDecreaseInDeferredIncomeTaxes
|
434000 | usd |
CY2022 | us-gaap |
Increase Decrease In Deferred Income Taxes
IncreaseDecreaseInDeferredIncomeTaxes
|
-130000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
1010000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
6554000 | usd |
CY2023 | us-gaap |
Increase Decrease In Unbilled Receivables
IncreaseDecreaseInUnbilledReceivables
|
-464000 | usd |
CY2022 | us-gaap |
Increase Decrease In Unbilled Receivables
IncreaseDecreaseInUnbilledReceivables
|
551000 | usd |
CY2023 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
1351000 | usd |
CY2022 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
987000 | usd |
CY2023 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
678000 | usd |
CY2022 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
227000 | usd |
CY2023 | us-gaap |
Increase Decrease In Prepaid Taxes
IncreaseDecreaseInPrepaidTaxes
|
-478000 | usd |
CY2022 | us-gaap |
Increase Decrease In Prepaid Taxes
IncreaseDecreaseInPrepaidTaxes
|
66000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts Payable Trade
IncreaseDecreaseInAccountsPayableTrade
|
1520000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accounts Payable Trade
IncreaseDecreaseInAccountsPayableTrade
|
3745000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
32000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
142000 | usd |
CY2023 | us-gaap |
Increase Decrease In Deferred Revenue
IncreaseDecreaseInDeferredRevenue
|
2724000 | usd |
CY2022 | us-gaap |
Increase Decrease In Deferred Revenue
IncreaseDecreaseInDeferredRevenue
|
98000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accrued Salaries
IncreaseDecreaseInAccruedSalaries
|
415000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accrued Salaries
IncreaseDecreaseInAccruedSalaries
|
-248000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
327000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
-1887000 | usd |
CY2023 | us-gaap |
Increase Decrease In Deferred Leasing Fees
IncreaseDecreaseInDeferredLeasingFees
|
0 | usd |
CY2022 | us-gaap |
Increase Decrease In Deferred Leasing Fees
IncreaseDecreaseInDeferredLeasingFees
|
3776000 | usd |
CY2023 | us-gaap |
Increase Decrease In Customer Advances And Deposits
IncreaseDecreaseInCustomerAdvancesAndDeposits
|
2042000 | usd |
CY2022 | us-gaap |
Increase Decrease In Customer Advances And Deposits
IncreaseDecreaseInCustomerAdvancesAndDeposits
|
-588000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
7732000 | usd |
CY2022 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
-6334000 | usd |
CY2023 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
5010000 | usd |
CY2022 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
2749000 | usd |
CY2023 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
346000 | usd |
CY2022 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
118000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-4664000 | usd |
CY2022 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-2631000 | usd |
CY2023 | us-gaap |
Proceeds From Notes Payable
ProceedsFromNotesPayable
|
0 | usd |
CY2022 | us-gaap |
Proceeds From Notes Payable
ProceedsFromNotesPayable
|
2805000 | usd |
CY2023 | us-gaap |
Repayments Of Debt And Capital Lease Obligations
RepaymentsOfDebtAndCapitalLeaseObligations
|
619000 | usd |
CY2022 | us-gaap |
Repayments Of Debt And Capital Lease Obligations
RepaymentsOfDebtAndCapitalLeaseObligations
|
581000 | usd |
CY2023 | us-gaap |
Payment Of Financing And Stock Issuance Costs
PaymentOfFinancingAndStockIssuanceCosts
|
0 | usd |
CY2022 | us-gaap |
Payment Of Financing And Stock Issuance Costs
PaymentOfFinancingAndStockIssuanceCosts
|
25000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-619000 | usd |
CY2022 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
2199000 | usd |
CY2023 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
2449000 | usd |
CY2022 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
-6766000 | usd |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
6726000 | usd |
CY2021Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
13492000 | usd |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
9175000 | usd |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
6726000 | usd |
CY2023 | us-gaap |
Interest Paid Net
InterestPaidNet
|
255000 | usd |
CY2022 | us-gaap |
Interest Paid Net
InterestPaidNet
|
260000 | usd |
CY2023 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
189000 | usd |
CY2022 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
2260000 | usd |
CY2023 | us-gaap |
Capital Expenditures Incurred But Not Yet Paid
CapitalExpendituresIncurredButNotYetPaid
|
2049000 | usd |
CY2022 | us-gaap |
Capital Expenditures Incurred But Not Yet Paid
CapitalExpendituresIncurredButNotYetPaid
|
2014000 | usd |
CY2023 | us-gaap |
Nature Of Operations
NatureOfOperations
|
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>1. NATURE OF BUSINESS</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Smith-Midland Corporation and its wholly-owned subsidiaries (the “Company”) develop, manufacture, license, sell and install precast concrete products and systems for the construction, transportation and utilities industries in the Mid-Atlantic, Northeastern, Midwestern and Southeastern regions of the United States.</p> | |
CY2023Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
108000 | usd |
CY2022Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
88000 | usd |
CY2023 | smid |
Revenuerecognitionpolicytextblock
Revenuerecognitionpolicytextblock
|
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Product Sales - Over Time</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company recognizes revenue to depict the transfer of goods or services to customers in an amount that reflects the consideration the Company expects to be entitled to in exchange for goods or services provided. Revenue associated with contracts with customers for customized products is recognized over time as the Company's performance creates or enhances customer-controlled assets or creates or enhances an asset with no alternative use, which the Company has an enforceable right to receive compensation as defined under the contract for performance completed. To determine the amount of revenue to recognize over time, the Company recognizes revenue over the contract terms based on the output method. The Company applied the “as invoiced” practical expedient as the amount of consideration the Company has the right to invoice corresponds directly with the value of the Company's performance to date.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">As the output method is driven by units produced, the Company recognizes revenues based on the value transferred to the customer relative to the remaining value to be transferred. The Company also matches the costs associated with the units produced. If a contract is projected to result in a loss, the entire contract loss is recognized in the period when the loss was first determined and the amount of the loss is updated in subsequent reporting periods. Revenue recognition also includes an amount related to a contract asset or contract liability. If the recognized revenue is greater than the amount billed to the customer, a contract asset is recorded in accounts receivable trade - unbilled. Conversely, if the amount billed to the customer is greater than the recognized revenue, a contract liability is recorded in customer deposits. Changes in the job performance, job conditions, and final contract settlements are factors that influence management’s assessment of total contract value and therefore, profit and revenue recognition.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">A portion of the work the Company performs requires financial assurances in the form of performance and payment bonds at the time of execution of the contract. Some contracts include retention provisions of up to 10%, which are generally withheld from each progress payment as retainage until the contract work has been completed and approved. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Product Sales - Point in Time</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">For certain product sales, that do not meet the over time criteria, the Company recognizes revenue when the product has been shipped to the destination in accordance with the terms outlined in the contract where a present obligation to pay exists and the customers have gained control of the product.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Accounts Receivable and Contract Balances</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The timing of when we bill our customers is generally dependent upon advance billing terms, milestone billings based on the completion of certain phases of the work, or when services are provided or products are shipped. The Company’s Accounts receivable trade – billed (in thousands), arising from Topic 606 is $13,685, $13,702, and $7,649 as of December 31, 2023, December 31, 2022, and December 31, 2021, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Projects with performance obligations recognized over time that have costs and estimated earnings recognized to date in excess of cumulative billings are reported on our Consolidated Balance Sheets as “Accounts receivable trade - unbilled” (contract assets). The Company’s Accounts receivable trade – unbilled (i.e. contract assets) balances (in thousands) are as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Year Ended December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2023</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2022</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Accounts receivable trade – unbilled, beginning of the period</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">990</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">439</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Accounts receivable trade – unbilled, end of the period</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">525</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">990</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Amounts invoiced in the period from amounts included at the beginning of the period</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">910</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">317</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Projects with performance obligations recognized over time that have cumulative billings in excess of costs and estimate earnings recognized to date, are reported on our Consolidated Balance Sheets as “Customer deposits” (contract liabilities). The Company’s Customer deposits (i.e. contract liabilities) balances (in thousands) are as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Year Ended December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2023</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2022</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Customer deposits, beginning of the period</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">737</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,325</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Customer deposits, end of the period</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,779</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">737</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Revenue recognized in the period from amounts included at the beginning of the period</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">308</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">983</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Any uncollected billed amounts for our performance obligations recognized over time, including contract retentions, are recorded within accounts receivable trade - billed. At December 31, 2023, December 31, 2022, and December 31, 2021 accounts receivable included contract retentions (in thousands) of approximately $1,310, $932, and $1,139, respectively, which are considered contract assets.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Our billed and unbilled revenue may be exposed to potential credit risk if our customers should encounter financial difficulties, and we maintain an allowance for estimated expected credit losses. A considerable amount of judgment is required when determining expected credit losses. Estimates of such expected losses are recorded based on historical losses experienced by the Company, current macro- and micro-economic conditions, and expected macro- and micro-economic conditions. Additional reserves are accumulated when we believe a specific customer may not be able to meet its financial obligations due to deterioration in financial condition or credit rating. Factors relevant to our assessment include our prior collection history with our customers, the related aging of past due balances, projections of credit losses based on historical trends or past events, and forecasts of future economic conditions. At December 31, 2023 and December 31, 2022, total allowances for credit losses and doubtful accounts were $806 and $781, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The rollforward of our allowance for credit losses (in thousands) for the year ended December 31, 2023, was as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Balance at December 31, 2022</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">781</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Cumulative Effect of Adoption of ASU 2016-13</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">64</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Provision for Expected Credit Losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(39 </td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Balance at December 31, 2023</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">806</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Sale to Customer with a Buy-Back Guarantee - Lease Income</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company entered into a buy-back agreement with one specific customer. Under this agreement, the Company guaranteed to buy-back barrier at a predetermined price at the end of the long-term project, subject to the condition of the product. Although the Company received payment in full when the product was produced, we were required to account for these transactions as operating leases. The amount of sale proceeds equal to the buy-back obligation was deferred until the buy-back was executed. The remaining sale proceeds were deferred in the same account and recognized on a straight-line basis over the usage period, such usage period commencing on delivery to the job-site and ending at the time the buy-back was executed. The Company capitalized the cost of the product on the consolidated balance sheet, and depreciated the value, less residual value, to cost of leasing revenue in “Cost of sales” over the estimated useful life of the asset. The deferred revenue and deferred costs related to the buy-back agreement were fully amortized as of December 31, 2022 and, therefore, the accounting as described has no impact for the year ended December 31, 2023.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Pursuant to an amendment entered into by the Company with the customer on April 13, 2022, the Company agreed to purchase barrier back in the amount equal to the buy-back guarantee. Accordingly, the Company settled any remaining deferred balances, in excess of the buy-back payment, to leasing revenue, and reclassified the net book value of the purchased product to “Property and equipment, net”. The revenue was recognized in accordance with Topic 842, <em>Leases</em>. See Note 7. Commitments and Contingencies for additional information regarding the amendment.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Barrier Rentals - Lease Income</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Leasing fees are paid by customers at the beginning of the lease agreement. We record amounts billed to customers in excess of recognizable revenue, as deferred revenue on the balance sheet. Revenue is recognized on a straight-line basis each month as lease income for the duration of the lease, in accordance with Topic 842, <em>Leases</em>.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Royalty Income</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company licenses certain products to other precast companies to produce the Company's products to engineering specifications under the licensing agreements. The agreements are typically for five-year terms and require royalty payments from 4% to 6% of total sales of licensed products, which are paid every month. The revenues from licensing agreements are recognized in the month earned.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Shipping and Installation</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Shipping and installation revenues are recognized as a distinct performance obligation in the period the shipping and installation services are provided to the customer, in accordance with Topic 606.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Disaggregation of Revenue</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">In the following table, revenue is disaggregated by primary sources of revenue (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Revenue by Type (Disaggregated Revenue)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>% Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Product Sales:</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Soundwall Sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,671</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,128</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,543</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">86</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Architectural Sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,131</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,269</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(3,138 </td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(74 </td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">SlenderWall Sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,312</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,489</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,823</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">257</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Miscellaneous Wall Sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,418</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,475</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,943</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">85</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Barrier Sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,827</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,717</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,110</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">17</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Easi-Set and Easi-Span Building Sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,712</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,089</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">623</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Utility Sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,857</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,023</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">834</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">41</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Miscellaneous Sales</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,820</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,631</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,189</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">73</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Total Product Sales</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><strong>38,748</strong></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><strong>27,821</strong></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><strong>10,927</strong></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><strong>39</strong></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"><strong>%</strong></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Barrier Rentals</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,330</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,545</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(215 </td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(3 </td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Royalty Income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,633</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,498</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">135</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Shipping and Installation Revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">11,869</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">13,267</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(1,398 </td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(11 </td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Total Service Revenue</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><strong>20,832</strong></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><strong>22,310</strong></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><strong>(1,478</strong></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"><strong>)</strong></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><strong>(7</strong></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"><strong>)%</strong></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Total Revenue</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"><strong>$</strong></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><strong>59,580</strong></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"><strong>$</strong></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><strong>50,131</strong></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"><strong>$</strong></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><strong>9,449</strong></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><strong>19</strong></td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;"><strong>%</strong></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Smith-Midland products are typically sold pursuant to an implicit warranty as to merchantability only. Warranty claims are reviewed and resolved on a case by case method. Although the Company does incur costs for warranty claims, historically such amounts are minimal.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The revenue items: soundwall sales, architectural sales, SlenderWall sales, miscellaneous wall sales, miscellaneous sales, barrier rentals, and royalty income are recognized as revenue over time. The revenue items: barrier sales, Easi-Set and Easi-Span building sales, utility sales, and shipping and installation revenue are recognized as revenue at a point in time.</p> | |
CY2023Q4 | us-gaap |
Accounts Receivable Billed For Long Term Contracts Or Programs
AccountsReceivableBilledForLongTermContractsOrPrograms
|
13685000 | usd |
CY2022Q4 | us-gaap |
Accounts Receivable Billed For Long Term Contracts Or Programs
AccountsReceivableBilledForLongTermContractsOrPrograms
|
13702000 | usd |
CY2021Q4 | us-gaap |
Accounts Receivable Billed For Long Term Contracts Or Programs
AccountsReceivableBilledForLongTermContractsOrPrograms
|
7649000 | usd |
CY2022Q4 | us-gaap |
Unbilled Contracts Receivable
UnbilledContractsReceivable
|
990000 | usd |
CY2021Q4 | us-gaap |
Unbilled Contracts Receivable
UnbilledContractsReceivable
|
439000 | usd |
CY2023Q4 | us-gaap |
Unbilled Contracts Receivable
UnbilledContractsReceivable
|
525000 | usd |
CY2022Q4 | us-gaap |
Unbilled Contracts Receivable
UnbilledContractsReceivable
|
990000 | usd |
CY2023 | smid |
Amounts Invoiced In The Period From Amounts
AmountsInvoicedInThePeriodFromAmounts
|
910000 | usd |
CY2022 | smid |
Amounts Invoiced In The Period From Amounts
AmountsInvoicedInThePeriodFromAmounts
|
317000 | usd |
CY2022Q4 | us-gaap |
Customer Advances And Deposits
CustomerAdvancesAndDeposits
|
737000 | usd |
CY2021Q4 | us-gaap |
Customer Advances And Deposits
CustomerAdvancesAndDeposits
|
1325000 | usd |
CY2023Q4 | us-gaap |
Customer Advances And Deposits
CustomerAdvancesAndDeposits
|
2779000 | usd |
CY2022Q4 | us-gaap |
Customer Advances And Deposits
CustomerAdvancesAndDeposits
|
737000 | usd |
CY2023 | smid |
Revenue Recognized In The Period From Amounts
RevenueRecognizedInThePeriodFromAmounts
|
308000 | usd |
CY2022 | smid |
Revenue Recognized In The Period From Amounts
RevenueRecognizedInThePeriodFromAmounts
|
983000 | usd |
CY2023Q4 | us-gaap |
Other Receivables
OtherReceivables
|
1310000 | usd |
CY2022Q4 | us-gaap |
Other Receivables
OtherReceivables
|
932000 | usd |
CY2021Q4 | us-gaap |
Other Receivables
OtherReceivables
|
1139000 | usd |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
806000 | usd |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
781000 | usd |
CY2023 | smid |
Change In Allowance Beginning Balance
ChangeInAllowanceBeginningBalance
|
781000 | usd |
CY2022Q4 | smid |
Property And Equipment Net
PropertyAndEquipmentNet
|
25124000 | usd |
CY2023Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
19287000 | usd |
CY2022Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
17060000 | usd |
CY2023Q4 | smid |
Property And Equipment Net
PropertyAndEquipmentNet
|
27680000 | usd |
CY2023 | smid |
Cumulative Effect Of Adoption
CumulativeEffectOfAdoption
|
64000 | usd |
CY2023 | us-gaap |
Provision For Other Credit Losses
ProvisionForOtherCreditLosses
|
-39000 | usd |
CY2023 | smid |
Change In Allowance Ending Balance
ChangeInAllowanceEndingBalance
|
806000 | usd |
CY2023 | us-gaap |
Revenues
Revenues
|
59580000 | usd |
CY2022 | us-gaap |
Revenues
Revenues
|
50131000 | usd |
CY2023 | smid |
Increase Decrease In Revenues
IncreaseDecreaseInRevenues
|
9449000 | usd |
CY2023 | smid |
Percent Of Change In Revenue
PercentOfChangeInRevenue
|
0.19 | pure |
CY2022 | us-gaap |
Premiums Percentage Assumed To Net
PremiumsPercentageAssumedToNet
|
0.10 | pure |
CY2022 | smid |
Outstanding Receivable Balance Percentage
OutstandingReceivableBalancePercentage
|
0.10 | pure |
CY2023 | smid |
Salesandusetaxespolicytextblock
Salesandusetaxespolicytextblock
|
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company excludes sales taxes as part of revenue, and includes use taxes on construction materials reported in cost of sales.</p> | |
CY2023 | smid |
Segmentreportingpolicypolicytextblock
Segmentreportingpolicypolicytextblock
|
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Operating segments are defined as components of an enterprise for which separate financial information is available and evaluated regularly by the chief operating decision maker, or decision making group, in deciding how to allocate resources and assess performance. The Company currently operates in one operating and reportable business segment for financial reporting purposes.</p> | |
CY2023 | us-gaap |
Concentration Risk Credit Risk
ConcentrationRiskCreditRisk
|
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Company sells products to highway contractors operating under government funded highway programs and other customers and extends credit based on an evaluation of the customer’s financial condition, generally without requiring collateral. Exposure to losses on receivables is principally dependent on each customer’s financial condition. The Company monitors its exposure to credit losses and maintains allowances for anticipated losses. Management reviews accounts receivable on a regular basis to determine the probability of collection. In performing this evaluation, the Company analyzes the payment history and its significant past due accounts, subsequent cash collections on these accounts, comparative accounts receivable aging statistics, and other customer-specific considerations existing and known as of the time of the analysis. Based on this information, along with other related factors, the Company develops an estimate of the uncollectible amounts included in accounts receivable. Management believes the allowance for credit losses at December 31, 2023 is adequate. However, actual write-offs may exceed the recorded allowance. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"> </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Due to inclement weather, the Company may experience reduced revenue from December through February and may realize a substantial part of its revenue during the other months of the year. </p> | |
CY2023 | us-gaap |
Use Of Estimates
UseOfEstimates
|
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The preparation of financial statements in conformity with U.S. generally accepted accounting principles (U.S. GAAP) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.</p> | |
CY2023 | us-gaap |
Advertising Expense
AdvertisingExpense
|
490000 | usd |
CY2022 | us-gaap |
Advertising Expense
AdvertisingExpense
|
421000 | usd |
CY2023Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
46967000 | usd |
CY2022Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
42184000 | usd |
CY2023 | us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
2378000 | usd |
CY2021 | us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
2892000 | usd |
CY2023 | us-gaap |
Payments For Repurchase Of Other Equity
PaymentsForRepurchaseOfOtherEquity
|
1500000 | usd |
CY2023 | us-gaap |
Line Of Credit Facility Expiration Date1
LineOfCreditFacilityExpirationDate1
|
2024-10-01 | |
CY2023Q4 | us-gaap |
Notes Payable
NotesPayable
|
5728000 | usd |
CY2022Q4 | us-gaap |
Notes Payable
NotesPayable
|
6348000 | usd |
CY2023Q4 | smid |
Less Current Maturities
LessCurrentMaturities
|
-636000 | usd |
CY2022Q4 | smid |
Less Current Maturities
LessCurrentMaturities
|
-618000 | usd |
CY2023Q4 | smid |
Noncurrent Notes Payable
NoncurrentNotesPayable
|
5092000 | usd |
CY2022Q4 | smid |
Noncurrent Notes Payable
NoncurrentNotesPayable
|
5730000 | usd |
CY2023Q4 | us-gaap |
Debt Instrument Unamortized Discount
DebtInstrumentUnamortizedDiscount
|
60000 | usd |
CY2022Q4 | us-gaap |
Debt Instrument Unamortized Discount
DebtInstrumentUnamortizedDiscount
|
68000 | usd |
CY2023 | us-gaap |
Capital Expenditure Discontinued Operations
CapitalExpenditureDiscontinuedOperations
|
5000000 | usd |
CY2023Q4 | us-gaap |
Tangible Capital
TangibleCapital
|
10000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Next Twelve Months
LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
|
636000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Two
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
|
658000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Three
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
|
671000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Four
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
|
699000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Five
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
|
727000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal After Year Five
LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
|
2337000 | usd |
CY2023Q4 | us-gaap |
Notes Payable
NotesPayable
|
5728000 | usd |
CY2023 | smid |
Related Parties Transaction Expenses From Transactions With Related Party
RelatedPartiesTransactionExpensesFromTransactionsWithRelatedParty
|
99000 | usd |
CY2023 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
467000 | usd |
CY2022 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
-63000 | usd |
CY2023 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-275000 | usd |
CY2022 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
212000 | usd |
CY2023 | us-gaap |
Federal Income Tax Expense Benefit Continuing Operations
FederalIncomeTaxExpenseBenefitContinuingOperations
|
192000 | usd |
CY2022 | us-gaap |
Federal Income Tax Expense Benefit Continuing Operations
FederalIncomeTaxExpenseBenefitContinuingOperations
|
149000 | usd |
CY2023 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
495000 | usd |
CY2022 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
78000 | usd |
CY2023 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-159000 | usd |
CY2022 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-82000 | usd |
CY2023 | us-gaap |
State And Local Income Tax Expense Benefit Continuing Operations
StateAndLocalIncomeTaxExpenseBenefitContinuingOperations
|
336000 | usd |
CY2022 | us-gaap |
State And Local Income Tax Expense Benefit Continuing Operations
StateAndLocalIncomeTaxExpenseBenefitContinuingOperations
|
-4000 | usd |
CY2023 | smid |
Income Tax Expense
IncomeTaxExpense
|
528000 | usd |
CY2022 | smid |
Income Tax Expense
IncomeTaxExpense
|
145000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
278000 | usd |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.21 | pure |
CY2022 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
199000 | usd |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.21 | pure |
CY2023 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
32000 | usd |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
0.024 | pure |
CY2022 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
-22000 | usd |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
-0.023 | pure |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Amount
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
|
2000 | usd |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Prior Year Income Taxes
EffectiveIncomeTaxRateReconciliationPriorYearIncomeTaxes
|
-0.001 | pure |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Amount
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
|
11000 | usd |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Prior Year Income Taxes
EffectiveIncomeTaxRateReconciliationPriorYearIncomeTaxes
|
-0.012 | pure |
CY2023 | smid |
Income Tax Reconciliation Provision To Return
IncomeTaxReconciliationProvisionToReturn
|
240000 | usd |
CY2023 | smid |
Effective Income Tax Rate Reconciliation Provision To Return
EffectiveIncomeTaxRateReconciliationProvisionToReturn
|
0.182 | pure |
CY2022 | smid |
Income Tax Reconciliation Provision To Return
IncomeTaxReconciliationProvisionToReturn
|
-2000 | usd |
CY2022 | smid |
Effective Income Tax Rate Reconciliation Provision To Return
EffectiveIncomeTaxRateReconciliationProvisionToReturn
|
-0.002 | pure |
CY2023 | us-gaap |
Income Tax Reconciliation Other Adjustments
IncomeTaxReconciliationOtherAdjustments
|
-20000 | usd |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Other Adjustments
EffectiveIncomeTaxRateReconciliationOtherAdjustments
|
-0.015 | pure |
CY2022 | us-gaap |
Income Tax Reconciliation Other Adjustments
IncomeTaxReconciliationOtherAdjustments
|
-19000 | usd |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Other Adjustments
EffectiveIncomeTaxRateReconciliationOtherAdjustments
|
-0.019 | pure |
CY2023 | smid |
Income Tax Expense Benefits
IncomeTaxExpenseBenefits
|
528000 | usd |
CY2023 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.400 | pure |
CY2022 | smid |
Income Tax Expense Benefits
IncomeTaxExpenseBenefits
|
145000 | usd |
CY2022 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.154 | pure |
CY2023Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
213000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
319000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Allowance For Doubtful Accounts
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
|
195000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Allowance For Doubtful Accounts
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
|
180000 | usd |
CY2023Q4 | smid |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Vacation
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedVacation
|
70000 | usd |
CY2022Q4 | smid |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Vacation
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedVacation
|
59000 | usd |
CY2023Q4 | us-gaap |
Deferred Revenue
DeferredRevenue
|
1509000 | usd |
CY2022Q4 | us-gaap |
Deferred Revenue
DeferredRevenue
|
768000 | usd |
CY2023Q4 | us-gaap |
Deferred Compensation Equity
DeferredCompensationEquity
|
135000 | usd |
CY2023Q4 | smid |
Deferred Tax Assets Operating Lease Right Of Use Asset
DeferredTaxAssetsOperatingLeaseRightOfUseAsset
|
11000 | usd |
CY2022Q4 | smid |
Deferred Tax Assets Operating Lease Right Of Use Asset
DeferredTaxAssetsOperatingLeaseRightOfUseAsset
|
28000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
151000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
118000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
2284000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
1472000 | usd |
CY2023Q4 | smid |
Deferred Tax Liabilities Retainage
DeferredTaxLiabilitiesRetainage
|
-299000 | usd |
CY2022Q4 | smid |
Deferred Tax Liabilities Retainage
DeferredTaxLiabilitiesRetainage
|
-240000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
3422000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
3195000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Prepaid Expenses
DeferredTaxLiabilitiesPrepaidExpenses
|
188000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Prepaid Expenses
DeferredTaxLiabilitiesPrepaidExpenses
|
76000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
|
15000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
|
14000 | usd |
CY2023Q4 | smid |
Deferred Tax Liabilities Unrealized Gain Loss
DeferredTaxLiabilitiesUnrealizedGainLoss
|
0 | usd |
CY2022Q4 | smid |
Deferred Tax Liabilities Unrealized Gain Loss
DeferredTaxLiabilitiesUnrealizedGainLoss
|
-4000 | usd |
CY2023Q4 | smid |
Deferred Tax Liabilities Lease L Iability
DeferredTaxLiabilitiesLeaseLIability
|
-11000 | usd |
CY2022Q4 | smid |
Deferred Tax Liabilities Lease L Iability
DeferredTaxLiabilitiesLeaseLIability
|
-28000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
3935000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
3557000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Liabilities Net
DeferredTaxAssetsLiabilitiesNet
|
1651000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Liabilities Net
DeferredTaxAssetsLiabilitiesNet
|
2085000 | usd |
CY2023Q4 | us-gaap |
Operating Loss Carryforwards
OperatingLossCarryforwards
|
5061000 | usd |
CY2022Q4 | us-gaap |
Operating Loss Carryforwards
OperatingLossCarryforwards
|
4217000 | usd |
CY2023 | us-gaap |
Defined Contribution Plan Employer Matching Contribution Percent Of Match
DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
|
0.50 | pure |
CY2023 | smid |
Defined Contribution Plan Employer Matching Contribution Percent Of Employees Gross Pay
DefinedContributionPlanEmployerMatchingContributionPercentOfEmployeesGrossPay
|
0.04 | pure |
CY2023 | us-gaap |
Defined Benefit Plan Contributions By Employer
DefinedBenefitPlanContributionsByEmployer
|
248000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Contributions By Employer
DefinedBenefitPlanContributionsByEmployer
|
225000 | usd |
CY2023 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
375000 | usd |
CY2022 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
505000 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Period Increase Decrease
UnrecognizedTaxBenefitsPeriodIncreaseDecrease
|
9000 | usd |
CY2022 | us-gaap |
Unrecognized Tax Benefits Period Increase Decrease
UnrecognizedTaxBenefitsPeriodIncreaseDecrease
|
53000 | usd |
CY2023 | us-gaap |
Fair Value Adjustment Of Warrants
FairValueAdjustmentOfWarrants
|
221000 | usd |
CY2022 | us-gaap |
Fair Value Adjustment Of Warrants
FairValueAdjustmentOfWarrants
|
570000 | usd |
CY2023Q4 | us-gaap |
Employee Service Share Based Compensation Nonvested Awards Total Compensation Cost Not Yet Recognized
EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
|
34000 | usd |
CY2022Q2 | smid |
Deferred Buy Back Lease Asset
DeferredBuyBackLeaseAsset
|
210000 | usd |
CY2022Q2 | smid |
Additional Linear Feet
AdditionalLinearFeet
|
115000 | usd |
CY2022Q2 | smid |
Purchase Price
PurchasePrice
|
5000000 | usd |
CY2022Q2 | smid |
Buy Back Agreement
BuyBackAgreement
|
210000 | usd |
CY2023 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
795000 | usd |
CY2022 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
800000 | usd |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
5258000 | shares |
CY2022 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
5233000 | shares |
CY2022 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.15 | |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.15 | |
CY2023 | us-gaap |
Net Income Loss Available To Common Stockholders Diluted
NetIncomeLossAvailableToCommonStockholdersDiluted
|
795000 | usd |
CY2022 | us-gaap |
Net Income Loss Available To Common Stockholders Diluted
NetIncomeLossAvailableToCommonStockholdersDiluted
|
800000 | usd |
CY2023 | smid |
Weighted Average Number Of Shares Outstanding
WeightedAverageNumberOfSharesOutstanding
|
5258000 | shares |
CY2022 | smid |
Weighted Average Number Of Shares Outstanding
WeightedAverageNumberOfSharesOutstanding
|
5233000 | shares |
CY2023 | us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
34000 | shares |
CY2022 | us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
20000 | shares |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
5292000 | shares |
CY2022 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
5253000 | shares |
CY2022 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.15 | |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.15 |