2021 Q4 Form 10-Q Financial Statement
#000143774921025432 Filed on November 05, 2021
Income Statement
Concept | 2021 Q4 | 2021 Q3 | 2020 Q3 |
---|---|---|---|
Revenue | $38.30M | $37.77M | $33.48M |
YoY Change | 10.15% | 12.81% | 3.12% |
Cost Of Revenue | $14.17M | $13.71M | $12.19M |
YoY Change | 10.5% | 12.44% | 0.66% |
Gross Profit | $24.13M | $24.06M | $21.29M |
YoY Change | 9.89% | 13.01% | 4.57% |
Gross Profit Margin | 63.01% | 63.71% | 63.6% |
Selling, General & Admin | $9.359M | $9.523M | $7.953M |
YoY Change | 14.13% | 19.74% | -8.65% |
% of Gross Profit | 38.78% | 39.58% | 37.36% |
Research & Development | |||
YoY Change | |||
% of Gross Profit | |||
Depreciation & Amortization | $1.358M | $1.398M | $1.840M |
YoY Change | -53.01% | -24.02% | 28.67% |
% of Gross Profit | 5.63% | 5.81% | 8.64% |
Operating Expenses | $11.25M | $9.523M | $7.953M |
YoY Change | -4.08% | 19.74% | -8.65% |
Operating Profit | $12.88M | $13.14M | $12.02M |
YoY Change | 25.91% | 9.29% | 17.62% |
Interest Expense | -$395.0K | $413.0K | $451.0K |
YoY Change | -10.23% | -8.43% | -11.57% |
% of Operating Profit | -3.07% | 3.14% | 3.75% |
Other Income/Expense, Net | $12.00K | -$514.0K | -$355.0K |
YoY Change | -90.77% | 44.79% | -13.63% |
Pretax Income | $12.49M | $12.62M | $11.67M |
YoY Change | 26.56% | 8.21% | 18.93% |
Income Tax | $2.858M | $2.967M | $2.088M |
% Of Pretax Income | 22.88% | 23.5% | 17.9% |
Net Earnings | $9.633M | $9.657M | $9.578M |
YoY Change | 17.33% | 0.82% | 17.97% |
Net Earnings / Revenue | 25.15% | 25.57% | 28.61% |
Basic Earnings Per Share | $0.38 | $0.38 | |
Diluted Earnings Per Share | $376.4K | $0.38 | $0.37 |
COMMON SHARES | |||
Basic Shares Outstanding | 25.45M | 25.43M | 25.22M |
Diluted Shares Outstanding | 25.65M | 25.70M |
Balance Sheet
Concept | 2021 Q4 | 2021 Q3 | 2020 Q3 |
---|---|---|---|
SHORT-TERM ASSETS | |||
Cash & Short-Term Investments | $54.36M | $52.48M | $21.90M |
YoY Change | 56.66% | 139.64% | 160.71% |
Cash & Equivalents | $54.36M | $52.48M | $21.86M |
Short-Term Investments | |||
Other Short-Term Assets | $982.0K | $1.018M | $1.901M |
YoY Change | -39.35% | -46.45% | 446.26% |
Inventory | |||
Prepaid Expenses | $3.884M | $2.869M | $2.598M |
Receivables | $13.73M | $16.26M | $17.43M |
Other Receivables | $752.0K | $95.00K | $3.600M |
Total Short-Term Assets | $73.71M | $72.73M | $47.37M |
YoY Change | 36.21% | 53.54% | 78.27% |
LONG-TERM ASSETS | |||
Property, Plant & Equipment | $12.39M | $11.45M | $12.27M |
YoY Change | 5.67% | -6.68% | -10.43% |
Goodwill | $61.61M | $61.61M | $57.88M |
YoY Change | 7.61% | 6.46% | -0.04% |
Intangibles | $1.790M | $1.851M | $1.462M |
YoY Change | 26.95% | 26.61% | -19.76% |
Long-Term Investments | |||
YoY Change | |||
Other Assets | $3.277M | $3.252M | $2.521M |
YoY Change | 7.2% | 29.0% | 35.03% |
Total Long-Term Assets | $83.83M | $83.46M | $79.88M |
YoY Change | 5.7% | 4.48% | -1.48% |
TOTAL ASSETS | |||
Total Short-Term Assets | $73.71M | $72.73M | $47.37M |
Total Long-Term Assets | $83.83M | $83.46M | $79.88M |
Total Assets | $157.5M | $156.2M | $127.2M |
YoY Change | 18.08% | 22.74% | 18.2% |
SHORT-TERM LIABILITIES | |||
YoY Change | |||
Accounts Payable | $1.943M | $961.0K | $725.0K |
YoY Change | 77.44% | 32.55% | -6.69% |
Accrued Expenses | $5.450M | $3.000M | $2.616M |
YoY Change | 71.17% | 14.68% | -25.34% |
Deferred Revenue | $17.21M | $17.31M | $17.33M |
YoY Change | 10.45% | -0.12% | -9.43% |
Short-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Long-Term Debt Due | $4.748M | $4.223M | $4.000M |
YoY Change | 15.8% | 5.58% | -9.09% |
Total Short-Term Liabilities | $40.39M | $39.17M | $32.07M |
YoY Change | 27.48% | 22.13% | -16.28% |
LONG-TERM LIABILITIES | |||
Long-Term Debt | $22.27M | $23.36M | $27.58M |
YoY Change | -16.11% | -15.31% | -10.96% |
Other Long-Term Liabilities | $2.544M | $3.377M | $3.596M |
YoY Change | -29.63% | -6.09% | 65.33% |
Total Long-Term Liabilities | $2.544M | $3.377M | $31.18M |
YoY Change | -91.57% | -89.17% | -5.95% |
TOTAL LIABILITIES | |||
Total Short-Term Liabilities | $40.39M | $39.17M | $32.07M |
Total Long-Term Liabilities | $2.544M | $3.377M | $31.18M |
Total Liabilities | $72.20M | $73.06M | $70.52M |
YoY Change | 4.48% | 3.6% | -10.37% |
SHAREHOLDERS EQUITY | |||
Retained Earnings | -$36.11M | -$42.70M | -$69.59M |
YoY Change | -41.16% | -38.64% | -28.13% |
Common Stock | $174.0M | $173.1M | $170.1M |
YoY Change | 1.26% | 1.8% | 5.94% |
Preferred Stock | |||
YoY Change | |||
Treasury Stock (at cost) | $50.15M | $44.94M | $41.14M |
YoY Change | 14.69% | 9.22% | 27.3% |
Treasury Stock Shares | $5.537M | $5.411M | $5.336M |
Shareholders Equity | $85.34M | $83.13M | $56.73M |
YoY Change | |||
Total Liabilities & Shareholders Equity | $157.5M | $156.2M | $127.2M |
YoY Change | 18.08% | 22.74% | 18.2% |
Cashflow Statement
Concept | 2021 Q4 | 2021 Q3 | 2020 Q3 |
---|---|---|---|
OPERATING ACTIVITIES | |||
Net Income | $9.633M | $9.657M | $9.578M |
YoY Change | 17.33% | 0.82% | 17.97% |
Depreciation, Depletion And Amortization | $1.358M | $1.398M | $1.840M |
YoY Change | -53.01% | -24.02% | 28.67% |
Cash From Operating Activities | $12.07M | $8.704M | $10.52M |
YoY Change | -25.56% | -17.26% | -18.2% |
INVESTING ACTIVITIES | |||
Capital Expenditures | -$1.717M | -$992.0K | -$1.010M |
YoY Change | 11.49% | -1.78% | -12.17% |
Acquisitions | |||
YoY Change | |||
Other Investing Activities | $0.00 | $0.00 | $260.0K |
YoY Change | -100.0% | ||
Cash From Investing Activities | -$1.717M | -$992.0K | -$750.0K |
YoY Change | 11.49% | 32.27% | -34.78% |
FINANCING ACTIVITIES | |||
Cash Dividend Paid | |||
YoY Change | |||
Common Stock Issuance & Retirement, Net | |||
YoY Change | |||
Debt Paid & Issued, Net | |||
YoY Change | |||
Cash From Financing Activities | -8.482M | -4.060M | -20.00K |
YoY Change | 341.77% | 20200.0% | -99.72% |
NET CHANGE | |||
Cash From Operating Activities | 12.07M | 8.704M | 10.52M |
Cash From Investing Activities | -1.717M | -992.0K | -750.0K |
Cash From Financing Activities | -8.482M | -4.060M | -20.00K |
Net Change In Cash | 1.875M | 3.652M | 9.750M |
YoY Change | -85.31% | -62.54% | 119.1% |
FREE CASH FLOW | |||
Cash From Operating Activities | $12.07M | $8.704M | $10.52M |
Capital Expenditures | -$1.717M | -$992.0K | -$1.010M |
Free Cash Flow | $13.79M | $9.696M | $11.53M |
YoY Change | -22.35% | -15.91% | -17.7% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2021Q4 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
25449013 | |
CY2021Q3 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
94000 | USD |
CY2020Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
120000 | USD |
CY2021Q3 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2020Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2021Q1 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
68284 | |
CY2021Q2 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
0.24 | |
CY2021Q3 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
10000 | |
CY2021Q3 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
0.12 | |
CY2021Q3 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
2000000 | |
CY2020Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
2000000 | |
CY2020Q1 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
75980 | |
CY2021Q3 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
1059000 | USD |
CY2020Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
1308000 | USD |
CY2021Q3 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | USD |
CY2020Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | USD |
CY2021Q3 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.001 | |
CY2021Q3 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2020Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2021Q3 | us-gaap |
Treasury Stock Shares
TreasuryStockShares
|
5411118 | |
CY2021Q3 | us-gaap |
Assets Current
AssetsCurrent
|
72726000 | USD |
CY2020Q4 | us-gaap |
Assets Current
AssetsCurrent
|
54112000 | USD |
CY2021Q3 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
11447000 | USD |
CY2020Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
11726000 | USD |
CY2021Q3 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
1851000 | USD |
CY2020Q4 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
1410000 | USD |
CY2021Q3 | us-gaap |
Goodwill
Goodwill
|
61614000 | USD |
CY2020Q4 | us-gaap |
Treasury Stock Shares
TreasuryStockShares
|
5384186 | |
CY2021Q1 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
26932 | |
CY2020Q4 | us-gaap |
Goodwill
Goodwill
|
57255000 | USD |
CY2021Q3 | us-gaap |
Capitalized Contract Cost Net Noncurrent
CapitalizedContractCostNetNoncurrent
|
4237000 | USD |
CY2020Q4 | us-gaap |
Capitalized Contract Cost Net Noncurrent
CapitalizedContractCostNetNoncurrent
|
4555000 | USD |
CY2020Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.001 | |
CY2021Q3 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
110000000 | |
CY2020Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
60000000 | |
CY2021Q3 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
30860131 | |
CY2020Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
30775154 | |
CY2021Q3 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
25449013 | |
CY2020Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
25390968 | |
CY2020Q1 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
260481 | |
CY2020Q1 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
0.21 | |
CY2020Q2 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
38369 | |
CY2020Q2 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
148284 | |
CY2020Q2 | us-gaap |
Stock Issued During Period Shares Restricted Stock Award Forfeited
StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited
|
6793 | |
CY2020Q3 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
17590 | |
CY2020Q3 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
103608 | |
CY2020 | us-gaap |
Number Of Operating Segments
NumberOfOperatingSegments
|
6 | pure |
CY2021Q1 | us-gaap |
Number Of Operating Segments
NumberOfOperatingSegments
|
1 | pure |
us-gaap |
Asset Impairment Charges
AssetImpairmentCharges
|
0 | USD | |
us-gaap |
Asset Impairment Charges
AssetImpairmentCharges
|
0 | USD | |
CY2021Q3 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
52482000 | USD |
CY2020Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
34690000 | USD |
CY2021Q3 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
16262000 | USD |
CY2020Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
13923000 | USD |
CY2021Q3 | us-gaap |
Prepaid Expense Current
PrepaidExpenseCurrent
|
2869000 | USD |
CY2020Q4 | us-gaap |
Prepaid Expense Current
PrepaidExpenseCurrent
|
2645000 | USD |
CY2021Q3 | us-gaap |
Income Taxes Receivable
IncomeTaxesReceivable
|
95000 | USD |
CY2020Q4 | us-gaap |
Income Taxes Receivable
IncomeTaxesReceivable
|
1235000 | USD |
CY2021Q3 | us-gaap |
Other Assets Current
OtherAssetsCurrent
|
1018000 | USD |
CY2020Q4 | us-gaap |
Other Assets Current
OtherAssetsCurrent
|
1619000 | USD |
CY2021Q3 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
3252000 | USD |
CY2020Q4 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
3057000 | USD |
CY2021Q3 | us-gaap |
Assets
Assets
|
156186000 | USD |
CY2020Q4 | us-gaap |
Assets
Assets
|
133423000 | USD |
CY2021Q3 | us-gaap |
Notes Payable Current
NotesPayableCurrent
|
4223000 | USD |
CY2020Q4 | us-gaap |
Notes Payable Current
NotesPayableCurrent
|
4061000 | USD |
CY2021Q3 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
173112000 | USD |
CY2021Q3 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
961000 | USD |
CY2020Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
1095000 | USD |
CY2021Q3 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
6828000 | USD |
CY2020Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
6460000 | USD |
CY2021Q3 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
3000000 | USD |
CY2020Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
3184000 | USD |
CY2021Q3 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
464000 | USD |
CY2020Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
0 | USD |
CY2021Q3 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
17308000 | USD |
CY2021Q3 | us-gaap |
Liabilities
Liabilities
|
73058000 | USD |
CY2020Q4 | us-gaap |
Liabilities
Liabilities
|
69108000 | USD |
CY2020Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
15585000 | USD |
CY2021Q3 | us-gaap |
Business Combination Contingent Consideration Liability Current
BusinessCombinationContingentConsiderationLiabilityCurrent
|
1984000 | USD |
CY2020Q4 | us-gaap |
Business Combination Contingent Consideration Liability Current
BusinessCombinationContingentConsiderationLiabilityCurrent
|
0 | USD |
CY2021Q3 | us-gaap |
Common Stock Value
CommonStockValue
|
31000 | USD |
CY2020Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
31000 | USD |
CY2021Q3 | us-gaap |
Dividends Payable Current
DividendsPayableCurrent
|
3054000 | USD |
CY2020Q4 | us-gaap |
Dividends Payable Current
DividendsPayableCurrent
|
0 | USD |
CY2021Q3 | us-gaap |
Other Liabilities Current
OtherLiabilitiesCurrent
|
1348000 | USD |
CY2020Q4 | us-gaap |
Other Liabilities Current
OtherLiabilitiesCurrent
|
1296000 | USD |
CY2021Q3 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
39170000 | USD |
CY2020Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
31681000 | USD |
CY2021Q3 | us-gaap |
Long Term Notes Payable
LongTermNotesPayable
|
23360000 | USD |
CY2020Q4 | us-gaap |
Long Term Notes Payable
LongTermNotesPayable
|
26547000 | USD |
CY2021Q3 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
7151000 | USD |
CY2020Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
7265000 | USD |
CY2021Q3 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
3377000 | USD |
CY2020Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
3615000 | USD |
CY2020Q4 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
171785000 | USD |
CY2021Q3 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-42701000 | USD |
CY2020Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-61375000 | USD |
CY2021Q3 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-2377000 | USD |
CY2020Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-2399000 | USD |
CY2021Q3 | us-gaap |
Treasury Stock Value
TreasuryStockValue
|
44937000 | USD |
CY2020Q4 | us-gaap |
Treasury Stock Value
TreasuryStockValue
|
43727000 | USD |
CY2021Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
83128000 | USD |
CY2020Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
64315000 | USD |
CY2021Q3 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
156186000 | USD |
CY2020Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
133423000 | USD |
CY2021Q3 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
37767000 | USD |
CY2020Q3 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
33477000 | USD |
us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
109656000 | USD | |
us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
98503000 | USD | |
CY2021Q3 | nrc |
Insurance Recoveries1
InsuranceRecoveries1
|
0 | USD |
CY2020Q3 | nrc |
Insurance Recoveries1
InsuranceRecoveries1
|
533000 | USD |
nrc |
Insurance Recoveries1
InsuranceRecoveries1
|
0 | USD | |
nrc |
Insurance Recoveries1
InsuranceRecoveries1
|
533000 | USD | |
CY2021Q3 | us-gaap |
Direct Operating Costs
DirectOperatingCosts
|
13707000 | USD |
CY2020Q3 | us-gaap |
Direct Operating Costs
DirectOperatingCosts
|
12189000 | USD |
us-gaap |
Direct Operating Costs
DirectOperatingCosts
|
38184000 | USD | |
us-gaap |
Direct Operating Costs
DirectOperatingCosts
|
36369000 | USD | |
CY2021Q3 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
9523000 | USD |
CY2020Q3 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
7953000 | USD |
us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
29060000 | USD | |
us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
25554000 | USD | |
CY2021Q3 | nrc |
Depreciation Amortization And Impairment
DepreciationAmortizationAndImpairment
|
1399000 | USD |
CY2020Q3 | nrc |
Depreciation Amortization And Impairment
DepreciationAmortizationAndImpairment
|
1847000 | USD |
nrc |
Depreciation Amortization And Impairment
DepreciationAmortizationAndImpairment
|
5016000 | USD | |
nrc |
Depreciation Amortization And Impairment
DepreciationAmortizationAndImpairment
|
4623000 | USD | |
CY2021Q3 | us-gaap |
Costs And Expenses
CostsAndExpenses
|
24629000 | USD |
CY2020Q3 | us-gaap |
Costs And Expenses
CostsAndExpenses
|
21989000 | USD |
us-gaap |
Costs And Expenses
CostsAndExpenses
|
72260000 | USD | |
us-gaap |
Costs And Expenses
CostsAndExpenses
|
66546000 | USD | |
CY2021Q3 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
13138000 | USD |
CY2020Q3 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
12021000 | USD |
us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
37396000 | USD | |
us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
32490000 | USD | |
CY2021Q3 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
4000 | USD |
CY2020Q3 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
2000 | USD |
us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
10000 | USD | |
us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
15000 | USD | |
CY2021Q3 | us-gaap |
Interest Expense
InterestExpense
|
413000 | USD |
CY2020Q3 | us-gaap |
Interest Expense
InterestExpense
|
451000 | USD |
us-gaap |
Interest Expense
InterestExpense
|
1268000 | USD | |
us-gaap |
Interest Expense
InterestExpense
|
1366000 | USD | |
CY2021Q3 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-105000 | USD |
CY2020Q3 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
94000 | USD |
us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-8000 | USD | |
us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
454000 | USD | |
CY2021Q3 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
-514000 | USD |
CY2020Q3 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
-355000 | USD |
us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
-1266000 | USD | |
us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
-897000 | USD | |
CY2021Q3 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
12624000 | USD |
CY2020Q3 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
11666000 | USD |
us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
36130000 | USD | |
us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
31593000 | USD | |
CY2021Q3 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2967000 | USD |
CY2020Q3 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2088000 | USD |
us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
8297000 | USD | |
us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2545000 | USD | |
CY2021Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9657000 | USD |
CY2020Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9578000 | USD |
us-gaap |
Profit Loss
ProfitLoss
|
27833000 | USD | |
us-gaap |
Profit Loss
ProfitLoss
|
29048000 | USD | |
CY2021Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.38 | |
CY2020Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.38 | |
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.09 | ||
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.15 | ||
CY2021Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.38 | |
CY2020Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.37 | |
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.08 | ||
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.13 | ||
CY2021Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25427000 | |
CY2020Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25219000 | |
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25423000 | ||
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25113000 | ||
CY2021Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25650000 | |
CY2020Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25704000 | |
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25655000 | ||
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25701000 | ||
CY2021Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9657000 | USD |
CY2020Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9578000 | USD |
us-gaap |
Profit Loss
ProfitLoss
|
27833000 | USD | |
us-gaap |
Profit Loss
ProfitLoss
|
29048000 | USD | |
CY2021Q3 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-108000 | USD |
CY2020Q3 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
249000 | USD |
us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
22000 | USD | |
us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-414000 | USD | |
CY2021Q3 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-108000 | USD |
CY2020Q3 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
249000 | USD |
CY2021Q2 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
74000 | USD |
CY2021Q2 | us-gaap |
Profit Loss
ProfitLoss
|
8944000 | USD |
CY2021Q2 | us-gaap |
Stockholders Equity
StockholdersEquity
|
76365000 | USD |
CY2021Q3 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
142000 | USD |
CY2021Q3 | nrc |
Apic Sharebased Payment Arrangement Increase Decrease For Cost Recognition
ApicSharebasedPaymentArrangementIncreaseDecreaseForCostRecognition
|
126000 | USD |
CY2021Q3 | us-gaap |
Dividends Common Stock Cash
DividendsCommonStockCash
|
3054000 | USD |
CY2021Q3 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-108000 | USD |
us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
22000 | USD | |
us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-414000 | USD | |
CY2021Q3 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
9549000 | USD |
CY2020Q3 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
9827000 | USD |
us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
27855000 | USD | |
us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
28634000 | USD | |
CY2020Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
64315000 | USD |
CY2021Q1 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
1210000 | USD |
CY2021Q1 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
911000 | USD |
CY2021Q1 | nrc |
Apic Sharebased Payment Arrangement Increase Decrease For Cost Recognition
ApicSharebasedPaymentArrangementIncreaseDecreaseForCostRecognition
|
-54000 | USD |
CY2021Q1 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
56000 | USD |
CY2021Q1 | us-gaap |
Profit Loss
ProfitLoss
|
9232000 | USD |
CY2021Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
73250000 | USD |
CY2021Q2 | nrc |
Apic Sharebased Payment Arrangement Increase Decrease For Cost Recognition
ApicSharebasedPaymentArrangementIncreaseDecreaseForCostRecognition
|
202000 | USD |
CY2021Q2 | us-gaap |
Dividends Common Stock Cash
DividendsCommonStockCash
|
6105000 | USD |
CY2021Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9657000 | USD |
CY2021Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
83128000 | USD |
CY2019Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
32892000 | USD |
CY2020Q1 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
4425000 | USD |
CY2020Q1 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
3145000 | USD |
CY2020Q1 | nrc |
Apic Sharebased Payment Arrangement Increase Decrease For Cost Recognition
ApicSharebasedPaymentArrangementIncreaseDecreaseForCostRecognition
|
332000 | USD |
CY2020Q1 | us-gaap |
Dividends Common Stock Cash
DividendsCommonStockCash
|
5278000 | USD |
CY2020Q1 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-1124000 | USD |
CY2020Q1 | us-gaap |
Profit Loss
ProfitLoss
|
11755000 | USD |
CY2020Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
37297000 | USD |
CY2020Q2 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
2077000 | USD |
CY2020Q2 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
2037000 | USD |
CY2020Q2 | nrc |
Apic Sharebased Payment Arrangement Increase Decrease For Cost Recognition
ApicSharebasedPaymentArrangementIncreaseDecreaseForCostRecognition
|
141000 | USD |
CY2020Q2 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
461000 | USD |
CY2020Q2 | us-gaap |
Profit Loss
ProfitLoss
|
7715000 | USD |
CY2020Q2 | us-gaap |
Stockholders Equity
StockholdersEquity
|
45574000 | USD |
CY2020Q3 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
916000 | USD |
CY2020Q3 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
1970000 | USD |
CY2020Q3 | nrc |
Apic Sharebased Payment Arrangement Increase Decrease For Cost Recognition
ApicSharebasedPaymentArrangementIncreaseDecreaseForCostRecognition
|
274000 | USD |
CY2020Q3 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
249000 | USD |
CY2020Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9578000 | USD |
CY2020Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
56729000 | USD |
us-gaap |
Profit Loss
ProfitLoss
|
27833000 | USD | |
us-gaap |
Profit Loss
ProfitLoss
|
29048000 | USD | |
nrc |
Depreciation Amortization And Impairment
DepreciationAmortizationAndImpairment
|
5016000 | USD | |
nrc |
Depreciation Amortization And Impairment
DepreciationAmortizationAndImpairment
|
4623000 | USD | |
us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-120000 | USD | |
us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-134000 | USD | |
nrc |
Reserve For Uncertain Tax Positions
ReserveForUncertainTaxPositions
|
210000 | USD | |
nrc |
Reserve For Uncertain Tax Positions
ReserveForUncertainTaxPositions
|
150000 | USD | |
us-gaap |
Share Based Compensation
ShareBasedCompensation
|
275000 | USD | |
us-gaap |
Share Based Compensation
ShareBasedCompensation
|
747000 | USD | |
nrc |
Gain On Property Insurance Recoveries
GainOnPropertyInsuranceRecoveries
|
-0 | USD | |
nrc |
Gain On Property Insurance Recoveries
GainOnPropertyInsuranceRecoveries
|
260000 | USD | |
us-gaap |
Gain Loss On Disposition Of Assets1
GainLossOnDispositionOfAssets1
|
-1000 | USD | |
us-gaap |
Gain Loss On Disposition Of Assets1
GainLossOnDispositionOfAssets1
|
-0 | USD | |
us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
2188000 | USD | |
us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
5830000 | USD | |
us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-231000 | USD | |
us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
478000 | USD | |
us-gaap |
Increase Decrease In Insurance Settlements Receivable
IncreaseDecreaseInInsuranceSettlementsReceivable
|
-0 | USD | |
us-gaap |
Increase Decrease In Insurance Settlements Receivable
IncreaseDecreaseInInsuranceSettlementsReceivable
|
913000 | USD | |
us-gaap |
Increase Decrease In Deferred Charges
IncreaseDecreaseInDeferredCharges
|
-318000 | USD | |
us-gaap |
Increase Decrease In Deferred Charges
IncreaseDecreaseInDeferredCharges
|
339000 | USD | |
nrc |
Increase Decrease In Operating Lease Assets And Lease Liabilities Net
IncreaseDecreaseInOperatingLeaseAssetsAndLeaseLiabilitiesNet
|
-17000 | USD | |
nrc |
Increase Decrease In Operating Lease Assets And Lease Liabilities Net
IncreaseDecreaseInOperatingLeaseAssetsAndLeaseLiabilitiesNet
|
5000 | USD | |
us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
-207000 | USD | |
us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
-681000 | USD | |
nrc |
Increase Decrease In Accrued Expenses Wages Bonuses And Profit Sharing
IncreaseDecreaseInAccruedExpensesWagesBonusesAndProfitSharing
|
-202000 | USD | |
nrc |
Increase Decrease In Accrued Expenses Wages Bonuses And Profit Sharing
IncreaseDecreaseInAccruedExpensesWagesBonusesAndProfitSharing
|
473000 | USD | |
us-gaap |
Increase Decrease In Income Taxes
IncreaseDecreaseInIncomeTaxes
|
1604000 | USD | |
us-gaap |
Increase Decrease In Income Taxes
IncreaseDecreaseInIncomeTaxes
|
-2974000 | USD | |
us-gaap |
Increase Decrease In Contract With Customer Liability
IncreaseDecreaseInContractWithCustomerLiability
|
1482000 | USD | |
us-gaap |
Increase Decrease In Contract With Customer Liability
IncreaseDecreaseInContractWithCustomerLiability
|
992000 | USD | |
us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
34270000 | USD | |
us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
24419000 | USD | |
us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
3797000 | USD | |
us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
2435000 | USD | |
us-gaap |
Proceeds From Insurance Settlement Investing Activities
ProceedsFromInsuranceSettlementInvestingActivities
|
0 | USD | |
us-gaap |
Proceeds From Insurance Settlement Investing Activities
ProceedsFromInsuranceSettlementInvestingActivities
|
260000 | USD | |
us-gaap |
Payments To Acquire Businesses Gross
PaymentsToAcquireBusinessesGross
|
3000000 | USD | |
us-gaap |
Payments To Acquire Businesses Gross
PaymentsToAcquireBusinessesGross
|
-0 | USD | |
us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-6797000 | USD | |
us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-2175000 | USD | |
us-gaap |
Repayments Of Notes Payable
RepaymentsOfNotesPayable
|
3049000 | USD | |
us-gaap |
Repayments Of Notes Payable
RepaymentsOfNotesPayable
|
2575000 | USD | |
us-gaap |
Payments Of Debt Issuance Costs
PaymentsOfDebtIssuanceCosts
|
-0 | USD | |
us-gaap |
Payments Of Debt Issuance Costs
PaymentsOfDebtIssuanceCosts
|
36000 | USD | |
us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
369000 | USD | |
us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
187000 | USD | |
us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
304000 | USD | |
us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
1592000 | USD | |
us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
461000 | USD | |
us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
1859000 | USD | |
us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
6105000 | USD | |
us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
10517000 | USD | |
us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-9680000 | USD | |
us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-13582000 | USD | |
us-gaap |
Effect Of Exchange Rate On Cash And Cash Equivalents
EffectOfExchangeRateOnCashAndCashEquivalents
|
-1000 | USD | |
us-gaap |
Effect Of Exchange Rate On Cash And Cash Equivalents
EffectOfExchangeRateOnCashAndCashEquivalents
|
-324000 | USD | |
us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
17792000 | USD | |
us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
8338000 | USD | |
CY2020Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
34690000 | USD |
CY2019Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
13517000 | USD |
CY2021Q3 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
52482000 | USD |
CY2020Q3 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
21855000 | USD |
us-gaap |
Interest Paid Net
InterestPaidNet
|
1186000 | USD | |
us-gaap |
Interest Paid Net
InterestPaidNet
|
1315000 | USD | |
us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
6601000 | USD | |
us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
5034000 | USD | |
us-gaap |
Capital Lease Obligations Incurred
CapitalLeaseObligationsIncurred
|
0 | USD | |
us-gaap |
Capital Lease Obligations Incurred
CapitalLeaseObligationsIncurred
|
771000 | USD | |
nrc |
Stock Tendered Cashless Exercise Of Stock Options
StockTenderedCashlessExerciseOfStockOptions
|
749000 | USD | |
nrc |
Stock Tendered Cashless Exercise Of Stock Options
StockTenderedCashlessExerciseOfStockOptions
|
5560000 | USD | |
nrc |
Deferred Acquisition Consideration
DeferredAcquisitionConsideration
|
1950000 | USD | |
nrc |
Deferred Acquisition Consideration
DeferredAcquisitionConsideration
|
0 | USD | |
CY2021Q3 | nrc |
Incremental Costs Of Obtaining A Contract Deferred During Period
IncrementalCostsOfObtainingAContractDeferredDuringPeriod
|
233000 | USD |
CY2020Q3 | nrc |
Incremental Costs Of Obtaining A Contract Deferred During Period
IncrementalCostsOfObtainingAContractDeferredDuringPeriod
|
717000 | USD |
nrc |
Incremental Costs Of Obtaining A Contract Deferred During Period
IncrementalCostsOfObtainingAContractDeferredDuringPeriod
|
1800000 | USD | |
nrc |
Incremental Costs Of Obtaining A Contract Deferred During Period
IncrementalCostsOfObtainingAContractDeferredDuringPeriod
|
2900000 | USD | |
CY2021Q3 | us-gaap |
Capitalized Contract Cost Net Noncurrent
CapitalizedContractCostNetNoncurrent
|
4200000 | USD |
CY2020Q4 | us-gaap |
Capitalized Contract Cost Net Noncurrent
CapitalizedContractCostNetNoncurrent
|
4600000 | USD |
CY2021Q3 | us-gaap |
Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
|
636000 | USD |
CY2020Q3 | us-gaap |
Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
|
736000 | USD |
us-gaap |
Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
|
2073000 | USD | |
us-gaap |
Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
|
2538000 | USD | |
CY2020Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
120000 | USD |
us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
38000 | USD | |
us-gaap |
Allowance For Doubtful Accounts Receivable Write Offs
AllowanceForDoubtfulAccountsReceivableWriteOffs
|
74000 | USD | |
us-gaap |
Allowance For Doubtful Accounts Receivable Recoveries
AllowanceForDoubtfulAccountsReceivableRecoveries
|
10000 | USD | |
CY2021Q3 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
94000 | USD |
CY2019Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
144000 | USD |
us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
41000 | USD | |
us-gaap |
Allowance For Doubtful Accounts Receivable Write Offs
AllowanceForDoubtfulAccountsReceivableWriteOffs
|
80000 | USD | |
us-gaap |
Allowance For Doubtful Accounts Receivable Recoveries
AllowanceForDoubtfulAccountsReceivableRecoveries
|
21000 | USD | |
CY2020Q3 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
126000 | USD |
us-gaap |
Operating Lease Impairment Loss
OperatingLeaseImpairmentLoss
|
324000 | USD | |
us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
98503000 | USD | |
CY2021Q3 | us-gaap |
Long Term Debt
LongTermDebt
|
27664000 | USD |
CY2020Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
30713000 | USD |
CY2021Q3 | us-gaap |
Long Term Debt Fair Value
LongTermDebtFairValue
|
29114000 | USD |
CY2020Q4 | us-gaap |
Long Term Debt Fair Value
LongTermDebtFairValue
|
32943000 | USD |
us-gaap |
Operating Lease Impairment Loss
OperatingLeaseImpairmentLoss
|
324000 | USD | |
CY2021Q3 | nrc |
Social Security Tax Payable Current
SocialSecurityTaxPayableCurrent
|
656000 | USD |
CY2020Q3 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.179 | pure |
CY2021Q3 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
37767000 | USD |
CY2020Q3 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
33477000 | USD |
us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
109656000 | USD | |
CY2021Q3 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
16262000 | USD |
CY2020Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
13923000 | USD |
CY2021Q3 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
17308000 | USD |
CY2020Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
15585000 | USD |
us-gaap |
Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
|
14926000 | USD | |
us-gaap |
Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
|
15366000 | USD | |
nrc |
Contract With Customer Liability Billings
ContractWithCustomerLiabilityBillings
|
16087000 | USD | |
nrc |
Contract With Customer Liability Billings
ContractWithCustomerLiabilityBillings
|
16352000 | USD | |
us-gaap |
Contract With Customer Asset Reclassified To Receivable
ContractWithCustomerAssetReclassifiedToReceivable
|
164000 | USD | |
us-gaap |
Contract With Customer Asset Reclassified To Receivable
ContractWithCustomerAssetReclassifiedToReceivable
|
100000 | USD | |
us-gaap |
Contract With Customer Liability Increase Decrease For Contract Acquired In Business Combination
ContractWithCustomerLiabilityIncreaseDecreaseForContractAcquiredInBusinessCombination
|
239000 | USD | |
us-gaap |
Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
|
-323000 | USD | |
us-gaap |
Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
|
12000 | USD | |
nrc |
Contract With Customer Asset Increase Revenue Recognized Conditional Consideration
ContractWithCustomerAssetIncreaseRevenueRecognizedConditionalConsideration
|
26000 | USD | |
nrc |
Contract With Customer Asset Increase Revenue Recognized Conditional Consideration
ContractWithCustomerAssetIncreaseRevenueRecognizedConditionalConsideration
|
238000 | USD | |
CY2021Q3 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.235 | pure |
us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.230 | pure | |
us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.081 | pure | |
CY2021Q3 | nrc |
Effective Income Tax Rate Change Share Based Compensation
EffectiveIncomeTaxRateChangeShareBasedCompensation
|
653000 | USD |
nrc |
Effective Income Tax Rate Change Share Based Compensation
EffectiveIncomeTaxRateChangeShareBasedCompensation
|
4700000 | USD | |
CY2020Q4 | nrc |
Change In Tax Law Deferral Of Social Security Tax Payments
ChangeInTaxLawDeferralOfSocialSecurityTaxPayments
|
1313000 | USD |
CY2021Q3 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
142000 | USD |
CY2020Q3 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
1100000 | USD |
us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
304000 | USD | |
us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
1600000 | USD | |
CY2020Q4 | us-gaap |
Goodwill Gross
GoodwillGross
|
57969000 | USD |
CY2020Q4 | us-gaap |
Goodwill Impaired Accumulated Impairment Loss
GoodwillImpairedAccumulatedImpairmentLoss
|
714000 | USD |
CY2020Q4 | us-gaap |
Goodwill
Goodwill
|
57255000 | USD |
us-gaap |
Goodwill Acquired During Period
GoodwillAcquiredDuringPeriod
|
4340000 | USD | |
us-gaap |
Goodwill Acquired During Period
GoodwillAcquiredDuringPeriod
|
4340000 | USD | |
us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
19000 | USD | |
us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
19000 | USD | |
CY2021Q3 | us-gaap |
Goodwill Gross
GoodwillGross
|
62328000 | USD |
CY2021Q3 | us-gaap |
Goodwill Impaired Accumulated Impairment Loss
GoodwillImpairedAccumulatedImpairmentLoss
|
714000 | USD |
CY2021Q3 | us-gaap |
Goodwill
Goodwill
|
61614000 | USD |
CY2021Q3 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
12976000 | USD |
CY2020Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
12276000 | USD |
CY2021Q3 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
12316000 | USD |
CY2020Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
12057000 | USD |
CY2021Q3 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
1851000 | USD |
CY2020Q4 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
1410000 | USD |
CY2021Q3 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
46419000 | USD |
CY2020Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
42705000 | USD |
CY2021Q3 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
34972000 | USD |
CY2020Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
30979000 | USD |
CY2021Q3 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
11447000 | USD |
CY2020Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
11726000 | USD |
CY2021Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9657000 | USD |
CY2020Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9578000 | USD |
us-gaap |
Profit Loss
ProfitLoss
|
27833000 | USD | |
us-gaap |
Profit Loss
ProfitLoss
|
29048000 | USD | |
CY2021Q3 | us-gaap |
Participating Securities Distributed And Undistributed Earnings Loss Basic
ParticipatingSecuritiesDistributedAndUndistributedEarningsLossBasic
|
5000 | USD |
CY2020Q3 | us-gaap |
Participating Securities Distributed And Undistributed Earnings Loss Basic
ParticipatingSecuritiesDistributedAndUndistributedEarningsLossBasic
|
17000 | USD |
us-gaap |
Participating Securities Distributed And Undistributed Earnings Loss Basic
ParticipatingSecuritiesDistributedAndUndistributedEarningsLossBasic
|
14000 | USD | |
us-gaap |
Participating Securities Distributed And Undistributed Earnings Loss Basic
ParticipatingSecuritiesDistributedAndUndistributedEarningsLossBasic
|
55000 | USD | |
CY2021Q3 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
9652000 | USD |
CY2020Q3 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
9561000 | USD |
us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
27819000 | USD | |
us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
28993000 | USD | |
CY2021Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25427000 | |
CY2020Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25219000 | |
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25423000 | ||
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25113000 | ||
CY2021Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.38 | |
CY2020Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.38 | |
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.09 | ||
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.15 | ||
CY2021Q3 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
9652000 | USD |
CY2020Q3 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
9561000 | USD |
us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
27819000 | USD | |
us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
28993000 | USD | |
CY2021Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25427000 | |
CY2020Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25219000 | |
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25423000 | ||
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25113000 | ||
CY2021Q3 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
223000 | |
CY2020Q3 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
485000 | |
us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
232000 | ||
us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
588000 | ||
CY2021Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25650000 | |
CY2020Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25704000 | |
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25655000 | ||
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25701000 | ||
CY2021Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.38 | |
CY2020Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.37 | |
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.08 | ||
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.13 | ||
CY2021Q3 | us-gaap |
Lessor Operating Lease Payments To Be Received Remainder Of Fiscal Year
LessorOperatingLeasePaymentsToBeReceivedRemainderOfFiscalYear
|
38000 | USD |
CY2021Q3 | us-gaap |
Lessor Operating Lease Payments To Be Received Next Twelve Months
LessorOperatingLeasePaymentsToBeReceivedNextTwelveMonths
|
118000 | USD |
CY2021Q3 | us-gaap |
Lessor Operating Lease Payments To Be Received Two Years
LessorOperatingLeasePaymentsToBeReceivedTwoYears
|
122000 | USD |
CY2021Q3 | us-gaap |
Lessor Operating Lease Payments To Be Received Three Years
LessorOperatingLeasePaymentsToBeReceivedThreeYears
|
127000 | USD |
CY2021Q3 | us-gaap |
Lessor Operating Lease Payments To Be Received Four Years
LessorOperatingLeasePaymentsToBeReceivedFourYears
|
65000 | USD |
CY2021Q3 | us-gaap |
Lessor Operating Lease Payments To Be Received
LessorOperatingLeasePaymentsToBeReceived
|
470000 | USD |