2020 Q4 Form 10-Q Financial Statement
#000143774920022940 Filed on November 06, 2020
Income Statement
Concept | 2020 Q4 | 2020 Q3 | 2019 Q3 |
---|---|---|---|
Revenue | $34.77M | $33.48M | $32.47M |
YoY Change | 6.59% | 3.12% | 8.17% |
Cost Of Revenue | $12.82M | $12.19M | $12.11M |
YoY Change | 14.77% | 0.66% | 2.8% |
Gross Profit | $21.96M | $21.29M | $20.36M |
YoY Change | 2.33% | 4.57% | 11.68% |
Gross Profit Margin | 63.16% | 63.6% | 62.71% |
Selling, General & Admin | $8.200M | $7.953M | $8.706M |
YoY Change | -0.49% | -8.65% | 13.37% |
% of Gross Profit | 37.34% | 37.36% | 42.76% |
Research & Development | |||
YoY Change | |||
% of Gross Profit | |||
Depreciation & Amortization | $2.890M | $1.840M | $1.430M |
YoY Change | 131.2% | 28.67% | 2.88% |
% of Gross Profit | 13.16% | 8.64% | 7.02% |
Operating Expenses | $11.73M | $7.953M | $8.706M |
YoY Change | 23.6% | -8.65% | -58.24% |
Operating Profit | $10.23M | $12.02M | $10.22M |
YoY Change | -14.54% | 17.62% | 11.5% |
Interest Expense | -$440.0K | $451.0K | $510.0K |
YoY Change | -6.38% | -11.57% | -6.25% |
% of Operating Profit | -4.3% | 3.75% | 4.99% |
Other Income/Expense, Net | $130.0K | -$355.0K | -$411.0K |
YoY Change | -200.0% | -13.63% | -47.51% |
Pretax Income | $9.870M | $11.67M | $9.809M |
YoY Change | -13.19% | 18.93% | 17.01% |
Income Tax | $1.660M | $2.088M | $1.690M |
% Of Pretax Income | 16.82% | 17.9% | 17.23% |
Net Earnings | $8.210M | $9.578M | $8.119M |
YoY Change | -5.63% | 17.97% | 16.12% |
Net Earnings / Revenue | 23.61% | 28.61% | 25.01% |
Basic Earnings Per Share | $0.38 | $0.33 | |
Diluted Earnings Per Share | $319.7K | $0.37 | $0.31 |
COMMON SHARES | |||
Basic Shares Outstanding | 25.30M | 25.22M | 24.83M |
Diluted Shares Outstanding | 25.70M | 25.74M |
Balance Sheet
Concept | 2020 Q4 | 2020 Q3 | 2019 Q3 |
---|---|---|---|
SHORT-TERM ASSETS | |||
Cash & Short-Term Investments | $34.70M | $21.90M | $8.400M |
YoY Change | 157.04% | 160.71% | 15.07% |
Cash & Equivalents | $34.69M | $21.86M | $8.358M |
Short-Term Investments | |||
Other Short-Term Assets | $1.619M | $1.901M | $348.0K |
YoY Change | -14.52% | 446.26% | 25.18% |
Inventory | |||
Prepaid Expenses | $2.645M | $2.598M | $2.000M |
Receivables | $13.92M | $17.43M | $15.31M |
Other Receivables | $1.300M | $3.600M | $600.0K |
Total Short-Term Assets | $54.11M | $47.37M | $26.57M |
YoY Change | 85.59% | 78.27% | -7.65% |
LONG-TERM ASSETS | |||
Property, Plant & Equipment | $11.73M | $12.27M | $13.70M |
YoY Change | -13.33% | -10.43% | -4.02% |
Goodwill | $57.26M | $57.88M | $57.90M |
YoY Change | -1.17% | -0.04% | -0.1% |
Intangibles | $1.410M | $1.462M | $1.822M |
YoY Change | -18.4% | -19.76% | -19.38% |
Long-Term Investments | |||
YoY Change | |||
Other Assets | $3.057M | $2.521M | $1.867M |
YoY Change | 22.13% | 35.03% | -10.76% |
Total Long-Term Assets | $79.31M | $79.88M | $81.08M |
YoY Change | -2.72% | -1.48% | 1.42% |
TOTAL ASSETS | |||
Total Short-Term Assets | $54.11M | $47.37M | $26.57M |
Total Long-Term Assets | $79.31M | $79.88M | $81.08M |
Total Assets | $133.4M | $127.2M | $107.6M |
YoY Change | 20.54% | 18.2% | -0.98% |
SHORT-TERM LIABILITIES | |||
YoY Change | |||
Accounts Payable | $1.095M | $725.0K | $777.0K |
YoY Change | -14.39% | -6.69% | -7.39% |
Accrued Expenses | $3.184M | $2.616M | $3.504M |
YoY Change | -6.57% | -25.34% | 7.29% |
Deferred Revenue | $15.59M | $17.33M | $19.13M |
YoY Change | -4.7% | -9.43% | |
Short-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Long-Term Debt Due | $4.100M | $4.000M | $4.400M |
YoY Change | -10.87% | -9.09% | 15.79% |
Total Short-Term Liabilities | $31.68M | $32.07M | $38.31M |
YoY Change | -16.97% | -16.28% | 8.11% |
LONG-TERM LIABILITIES | |||
Long-Term Debt | $26.55M | $27.58M | $30.98M |
YoY Change | -10.9% | -10.96% | -11.77% |
Other Long-Term Liabilities | $3.615M | $3.596M | $2.175M |
YoY Change | 47.91% | 65.33% | 51.78% |
Total Long-Term Liabilities | $30.16M | $31.18M | $33.15M |
YoY Change | -6.44% | -5.95% | -9.28% |
TOTAL LIABILITIES | |||
Total Short-Term Liabilities | $31.68M | $32.07M | $38.31M |
Total Long-Term Liabilities | $30.16M | $31.18M | $33.15M |
Total Liabilities | $69.11M | $70.52M | $78.67M |
YoY Change | -11.16% | -10.37% | 0.12% |
SHAREHOLDERS EQUITY | |||
Retained Earnings | -$61.38M | -$69.59M | -$96.82M |
YoY Change | -34.26% | -28.13% | -0.22% |
Common Stock | $171.8M | $170.1M | $160.6M |
YoY Change | 5.94% | 5.94% | 2.65% |
Preferred Stock | |||
YoY Change | |||
Treasury Stock (at cost) | $43.73M | $41.14M | $32.32M |
YoY Change | 29.65% | 27.3% | 18.85% |
Treasury Stock Shares | $5.384M | $5.336M | $5.181M |
Shareholders Equity | $64.32M | $56.73M | $28.98M |
YoY Change | |||
Total Liabilities & Shareholders Equity | $133.4M | $127.2M | $107.6M |
YoY Change | 20.54% | 18.2% | -0.98% |
Cashflow Statement
Concept | 2020 Q4 | 2020 Q3 | 2019 Q3 |
---|---|---|---|
OPERATING ACTIVITIES | |||
Net Income | $8.210M | $9.578M | $8.119M |
YoY Change | -5.63% | 17.97% | 16.12% |
Depreciation, Depletion And Amortization | $2.890M | $1.840M | $1.430M |
YoY Change | 131.2% | 28.67% | 2.88% |
Cash From Operating Activities | $16.22M | $10.52M | $12.86M |
YoY Change | 35.73% | -18.2% | 70.33% |
INVESTING ACTIVITIES | |||
Capital Expenditures | -$1.540M | -$1.010M | -$1.150M |
YoY Change | 25.2% | -12.17% | -44.98% |
Acquisitions | |||
YoY Change | |||
Other Investing Activities | $0.00 | $260.0K | |
YoY Change | |||
Cash From Investing Activities | -$1.540M | -$750.0K | -$1.150M |
YoY Change | 25.2% | -34.78% | -44.98% |
FINANCING ACTIVITIES | |||
Cash Dividend Paid | |||
YoY Change | |||
Common Stock Issuance & Retirement, Net | |||
YoY Change | |||
Debt Paid & Issued, Net | |||
YoY Change | |||
Cash From Financing Activities | -1.920M | -20.00K | -7.260M |
YoY Change | -66.72% | -99.72% | 41.52% |
NET CHANGE | |||
Cash From Operating Activities | 16.22M | 10.52M | 12.86M |
Cash From Investing Activities | -1.540M | -750.0K | -1.150M |
Cash From Financing Activities | -1.920M | -20.00K | -7.260M |
Net Change In Cash | 12.76M | 9.750M | 4.450M |
YoY Change | 157.78% | 119.1% | 1248.48% |
FREE CASH FLOW | |||
Cash From Operating Activities | $16.22M | $10.52M | $12.86M |
Capital Expenditures | -$1.540M | -$1.010M | -$1.150M |
Free Cash Flow | $17.76M | $11.53M | $14.01M |
YoY Change | 34.75% | -17.7% | 45.33% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2020Q1 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
75980 | |
CY2020Q4 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
25302917 | |
CY2020Q3 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
126000 | USD |
CY2019Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
144000 | USD |
CY2020Q3 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2019Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2020Q3 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
2000000 | |
CY2019Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
2000000 | |
CY2020Q3 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2019Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2020Q3 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.001 | |
CY2019Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.001 | |
CY2020Q3 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
60000000 | |
CY2019Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
60000000 | |
CY2020Q3 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
30657154 | |
CY2019Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
30151574 | |
CY2020Q3 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
25321141 | |
CY2019Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
24947500 | |
CY2020Q3 | us-gaap |
Treasury Stock Shares
TreasuryStockShares
|
5336013 | |
CY2019Q4 | us-gaap |
Treasury Stock Shares
TreasuryStockShares
|
5204074 | |
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 | |
CY2019Q1 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
28657 | |
CY2019Q1 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
86247 | |
CY2019Q1 | us-gaap |
Stock Issued During Period Shares Restricted Stock Award Net Of Forfeitures
StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
|
6005 | |
CY2019Q1 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
0.19 | |
CY2019Q2 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
2977 | |
CY2019Q2 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
18000 | |
CY2019Q2 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
0.19 | |
CY2019Q3 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
32207 | |
CY2019Q3 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
72843 | |
CY2019Q3 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
0.19 | |
us-gaap |
Number Of Operating Segments
NumberOfOperatingSegments
|
6 | pure | |
us-gaap |
Number Of Reportable Segments
NumberOfReportableSegments
|
1 | pure | |
us-gaap |
Asset Impairment Charges
AssetImpairmentCharges
|
0 | USD | |
CY2019 | us-gaap |
Asset Impairment Charges
AssetImpairmentCharges
|
0 | USD |
CY2019Q3 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
0 | USD |
us-gaap |
Number Of Operating Segments
NumberOfOperatingSegments
|
6 | pure | |
us-gaap |
Number Of Reportable Segments
NumberOfReportableSegments
|
1 | pure | |
CY2020Q3 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
21855000 | USD |
CY2019Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
13517000 | USD |
CY2020Q3 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
17426000 | USD |
CY2019Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
11639000 | USD |
CY2020Q3 | us-gaap |
Prepaid Expense Current
PrepaidExpenseCurrent
|
2598000 | USD |
CY2019Q4 | us-gaap |
Prepaid Expense Current
PrepaidExpenseCurrent
|
2038000 | USD |
CY2020Q3 | us-gaap |
Income Taxes Receivable
IncomeTaxesReceivable
|
2673000 | USD |
CY2019Q4 | us-gaap |
Income Taxes Receivable
IncomeTaxesReceivable
|
69000 | USD |
CY2020Q3 | us-gaap |
Insurance Settlements Receivable Current
InsuranceSettlementsReceivableCurrent
|
913000 | USD |
CY2019Q4 | us-gaap |
Insurance Settlements Receivable Current
InsuranceSettlementsReceivableCurrent
|
0 | USD |
CY2020Q3 | us-gaap |
Other Assets Current
OtherAssetsCurrent
|
1901000 | USD |
CY2019Q4 | us-gaap |
Other Assets Current
OtherAssetsCurrent
|
1894000 | USD |
CY2020Q3 | us-gaap |
Assets Current
AssetsCurrent
|
47366000 | USD |
CY2019Q4 | us-gaap |
Assets Current
AssetsCurrent
|
29157000 | USD |
CY2020Q3 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
12267000 | USD |
CY2019Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
13530000 | USD |
CY2020Q3 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
1462000 | USD |
CY2019Q4 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
1728000 | USD |
CY2020Q3 | us-gaap |
Goodwill
Goodwill
|
57875000 | USD |
CY2019Q4 | us-gaap |
Goodwill
Goodwill
|
57935000 | USD |
CY2020Q3 | us-gaap |
Capitalized Contract Cost Net Noncurrent
CapitalizedContractCostNetNoncurrent
|
4542000 | USD |
CY2019Q4 | us-gaap |
Capitalized Contract Cost Net Noncurrent
CapitalizedContractCostNetNoncurrent
|
4204000 | USD |
CY2020Q3 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
1213000 | USD |
CY2019Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
1628000 | USD |
CY2020Q3 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
2521000 | USD |
CY2019Q4 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
2503000 | USD |
CY2020Q3 | us-gaap |
Assets
Assets
|
127246000 | USD |
CY2019Q4 | us-gaap |
Assets
Assets
|
110685000 | USD |
CY2020Q3 | us-gaap |
Notes Payable Current
NotesPayableCurrent
|
4008000 | USD |
CY2019Q4 | us-gaap |
Notes Payable Current
NotesPayableCurrent
|
4378000 | USD |
CY2020Q3 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
725000 | USD |
CY2019Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
1279000 | USD |
CY2020Q3 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
6155000 | USD |
CY2019Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
6086000 | USD |
CY2020Q3 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
2616000 | USD |
CY2019Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
3408000 | USD |
CY2020Q3 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
0 | USD |
CY2019Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
366000 | USD |
CY2019Q4 | us-gaap |
Dividends Payable Current
DividendsPayableCurrent
|
5239000 | USD |
CY2020Q3 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
17328000 | USD |
CY2019Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
16354000 | USD |
CY2020Q3 | us-gaap |
Other Liabilities Current
OtherLiabilitiesCurrent
|
1241000 | USD |
CY2019Q4 | us-gaap |
Other Liabilities Current
OtherLiabilitiesCurrent
|
1045000 | USD |
CY2020Q3 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
32073000 | USD |
CY2019Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
38155000 | USD |
CY2020Q3 | us-gaap |
Long Term Notes Payable
LongTermNotesPayable
|
27583000 | USD |
CY2019Q4 | us-gaap |
Long Term Notes Payable
LongTermNotesPayable
|
29795000 | USD |
CY2020Q3 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
7265000 | USD |
CY2019Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
7399000 | USD |
CY2020Q3 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
3596000 | USD |
CY2019Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
2444000 | USD |
CY2020Q3 | us-gaap |
Liabilities
Liabilities
|
70517000 | USD |
CY2019Q4 | us-gaap |
Liabilities
Liabilities
|
77793000 | USD |
CY2020Q3 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | USD |
CY2019Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | USD |
CY2020Q3 | us-gaap |
Common Stock Value
CommonStockValue
|
31000 | USD |
CY2019Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
30000 | USD |
CY2020Q3 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
170052000 | USD |
CY2019Q4 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
162154000 | USD |
CY2020Q3 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-69587000 | USD |
CY2019Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-93357000 | USD |
CY2020Q3 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-2623000 | USD |
CY2019Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-2209000 | USD |
CY2020Q3 | us-gaap |
Treasury Stock Value
TreasuryStockValue
|
41144000 | USD |
CY2019Q4 | us-gaap |
Treasury Stock Value
TreasuryStockValue
|
33726000 | USD |
CY2020Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
56729000 | USD |
CY2019Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
32892000 | USD |
CY2020Q3 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
127246000 | USD |
CY2019Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
110685000 | USD |
CY2020Q3 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
33477000 | USD |
CY2019Q3 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
32465000 | USD |
us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
98503000 | USD | |
us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
95359000 | USD | |
CY2020Q3 | nrc |
Insurance Recoveries1
InsuranceRecoveries1
|
533000 | USD |
nrc |
Insurance Recoveries1
InsuranceRecoveries1
|
533000 | USD | |
CY2020Q3 | us-gaap |
Direct Operating Costs
DirectOperatingCosts
|
12189000 | USD |
CY2019Q3 | us-gaap |
Direct Operating Costs
DirectOperatingCosts
|
12109000 | USD |
us-gaap |
Direct Operating Costs
DirectOperatingCosts
|
36369000 | USD | |
us-gaap |
Direct Operating Costs
DirectOperatingCosts
|
35269000 | USD | |
CY2020Q3 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
7953000 | USD |
CY2019Q3 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
8706000 | USD |
us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
25554000 | USD | |
us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
24732000 | USD | |
CY2020Q3 | us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
1847000 | USD |
CY2019Q3 | us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
1430000 | USD |
us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
4623000 | USD | |
us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
4285000 | USD | |
CY2020Q3 | us-gaap |
Costs And Expenses
CostsAndExpenses
|
21989000 | USD |
CY2019Q3 | us-gaap |
Costs And Expenses
CostsAndExpenses
|
22245000 | USD |
us-gaap |
Costs And Expenses
CostsAndExpenses
|
66546000 | USD | |
us-gaap |
Costs And Expenses
CostsAndExpenses
|
64286000 | USD | |
CY2020Q3 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
12021000 | USD |
CY2019Q3 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
10220000 | USD |
us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
32490000 | USD | |
us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
31073000 | USD | |
CY2020Q3 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
2000 | USD |
CY2019Q3 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
10000 | USD |
us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
15000 | USD | |
us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
24000 | USD | |
CY2020Q3 | us-gaap |
Interest Expense
InterestExpense
|
451000 | USD |
CY2019Q3 | us-gaap |
Interest Expense
InterestExpense
|
510000 | USD |
us-gaap |
Interest Expense
InterestExpense
|
1366000 | USD | |
us-gaap |
Interest Expense
InterestExpense
|
1613000 | USD | |
CY2020Q3 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
94000 | USD |
CY2019Q3 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
89000 | USD |
us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
454000 | USD | |
us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-330000 | USD | |
CY2020Q3 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
-355000 | USD |
CY2019Q3 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
-411000 | USD |
us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
-897000 | USD | |
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.92 | ||
us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
-1919000 | USD | |
CY2020Q3 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
11666000 | USD |
CY2019Q3 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
9809000 | USD |
us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
31593000 | USD | |
us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
29154000 | USD | |
CY2020Q3 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2088000 | USD |
CY2019Q3 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
1690000 | USD |
us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2545000 | USD | |
us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5446000 | USD | |
CY2020Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9578000 | USD |
CY2019Q3 | us-gaap |
Profit Loss
ProfitLoss
|
8119000 | USD |
us-gaap |
Profit Loss
ProfitLoss
|
29048000 | USD | |
us-gaap |
Profit Loss
ProfitLoss
|
23708000 | USD | |
CY2020Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.38 | |
CY2019Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.33 | |
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.15 | ||
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.95 | ||
CY2020Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.37 | |
CY2019Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.31 | |
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.13 | ||
CY2020Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25219000 | |
CY2019Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
24827000 | |
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25113000 | ||
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
24794000 | ||
CY2020Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25704000 | |
CY2019Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25741000 | |
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25701000 | ||
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25624000 | ||
CY2020Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9578000 | USD |
CY2019Q3 | us-gaap |
Profit Loss
ProfitLoss
|
8119000 | USD |
us-gaap |
Profit Loss
ProfitLoss
|
29048000 | USD | |
us-gaap |
Profit Loss
ProfitLoss
|
23708000 | USD | |
CY2020Q3 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
249000 | USD |
CY2019Q3 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-146000 | USD |
us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-414000 | USD | |
us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
474000 | USD | |
CY2020Q3 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
249000 | USD |
CY2019Q3 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-146000 | USD |
us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-414000 | USD | |
us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
474000 | USD | |
CY2020Q3 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
9827000 | USD |
CY2019Q3 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
7973000 | USD |
us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
28634000 | USD | |
us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
24182000 | 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 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
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 |
CY2019Q1 | us-gaap |
Profit Loss
ProfitLoss
|
8196000 | USD |
CY2019Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
22739000 | USD |
CY2019Q2 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
137000 | USD |
CY2019Q2 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
137000 | USD |
CY2019Q2 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
307000 | USD |
CY2019Q2 | us-gaap |
Dividends Common Stock Cash
DividendsCommonStockCash
|
4727000 | USD |
CY2019Q2 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
255000 | USD |
CY2019Q2 | us-gaap |
Profit Loss
ProfitLoss
|
7393000 | USD |
CY2020Q2 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
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 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
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 |
CY2018Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
19083000 | USD |
CY2019Q1 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
1116000 | USD |
CY2019Q1 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
633000 | USD |
CY2019Q1 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
302000 | USD |
CY2019Q1 | us-gaap |
Dividends Common Stock Cash
DividendsCommonStockCash
|
4724000 | USD |
CY2019Q1 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
365000 | USD |
CY2019Q2 | us-gaap |
Stockholders Equity
StockholdersEquity
|
25967000 | USD |
CY2019Q3 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
2063000 | USD |
CY2019Q3 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
1525000 | USD |
CY2019Q3 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
308000 | USD |
CY2019Q3 | us-gaap |
Dividends Common Stock Cash
DividendsCommonStockCash
|
4735000 | USD |
CY2019Q3 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-146000 | USD |
CY2019Q3 | us-gaap |
Profit Loss
ProfitLoss
|
8119000 | USD |
CY2019Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
28975000 | USD |
us-gaap |
Profit Loss
ProfitLoss
|
29048000 | USD | |
us-gaap |
Profit Loss
ProfitLoss
|
23708000 | USD | |
us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
4623000 | USD | |
us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
4285000 | USD | |
us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-134000 | USD | |
us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
919000 | USD | |
nrc |
Reserve For Uncertain Tax Positions
ReserveForUncertainTaxPositions
|
150000 | USD | |
nrc |
Reserve For Uncertain Tax Positions
ReserveForUncertainTaxPositions
|
-262000 | USD | |
us-gaap |
Share Based Compensation
ShareBasedCompensation
|
747000 | USD | |
us-gaap |
Share Based Compensation
ShareBasedCompensation
|
917000 | USD | |
nrc |
Gain On Property Insurance Recoveries
GainOnPropertyInsuranceRecoveries
|
260000 | USD | |
nrc |
Gain On Property Insurance Recoveries
GainOnPropertyInsuranceRecoveries
|
-0 | USD | |
us-gaap |
Gain Loss On Disposition Of Assets1
GainLossOnDispositionOfAssets1
|
-40000 | USD | |
us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
5830000 | USD | |
us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
3343000 | USD | |
us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
478000 | USD | |
us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-978000 | USD | |
us-gaap |
Increase Decrease In Insurance Settlements Receivable
IncreaseDecreaseInInsuranceSettlementsReceivable
|
913000 | USD | |
us-gaap |
Increase Decrease In Insurance Settlements Receivable
IncreaseDecreaseInInsuranceSettlementsReceivable
|
-0 | USD | |
nrc |
Increase Decrease Capitalized Contract Cost
IncreaseDecreaseCapitalizedContractCost
|
339000 | USD | |
nrc |
Increase Decrease Capitalized Contract Cost
IncreaseDecreaseCapitalizedContractCost
|
508000 | USD | |
nrc |
Increase Decrease In Operating Lease Assets And Lease Liabilities Net
IncreaseDecreaseInOperatingLeaseAssetsAndLeaseLiabilitiesNet
|
5000 | USD | |
nrc |
Increase Decrease In Operating Lease Assets And Lease Liabilities Net
IncreaseDecreaseInOperatingLeaseAssetsAndLeaseLiabilitiesNet
|
10000 | USD | |
us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
-681000 | USD | |
us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
223000 | USD | |
us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
1592000 | USD | |
us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
1859000 | USD | |
us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
1021000 | USD | |
us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
69000 | USD | |
nrc |
Increase Decrease In Accrued Expenses Wages Bonuses And Profit Sharing
IncreaseDecreaseInAccruedExpensesWagesBonusesAndProfitSharing
|
473000 | USD | |
nrc |
Increase Decrease In Accrued Expenses Wages Bonuses And Profit Sharing
IncreaseDecreaseInAccruedExpensesWagesBonusesAndProfitSharing
|
138000 | USD | |
us-gaap |
Increase Decrease In Income Taxes
IncreaseDecreaseInIncomeTaxes
|
-2974000 | USD | |
us-gaap |
Increase Decrease In Income Taxes
IncreaseDecreaseInIncomeTaxes
|
-829000 | USD | |
us-gaap |
Increase Decrease In Contract With Customer Liability
IncreaseDecreaseInContractWithCustomerLiability
|
992000 | USD | |
us-gaap |
Increase Decrease In Contract With Customer Liability
IncreaseDecreaseInContractWithCustomerLiability
|
2872000 | USD | |
us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
24419000 | USD | |
us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
28974000 | USD | |
us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
2435000 | USD | |
us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
3429000 | USD | |
us-gaap |
Proceeds From Insurance Settlement Investing Activities
ProceedsFromInsuranceSettlementInvestingActivities
|
260000 | USD | |
us-gaap |
Proceeds From Insurance Settlement Investing Activities
ProceedsFromInsuranceSettlementInvestingActivities
|
0 | USD | |
us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-2175000 | USD | |
us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-3429000 | USD | |
us-gaap |
Proceeds From Lines Of Credit
ProceedsFromLinesOfCredit
|
21000000 | USD | |
us-gaap |
Repayments Of Lines Of Credit
RepaymentsOfLinesOfCredit
|
21000000 | USD | |
us-gaap |
Repayments Of Notes Payable
RepaymentsOfNotesPayable
|
2575000 | USD | |
us-gaap |
Repayments Of Notes Payable
RepaymentsOfNotesPayable
|
2767000 | USD | |
us-gaap |
Payments Of Debt Issuance Costs
PaymentsOfDebtIssuanceCosts
|
36000 | USD | |
us-gaap |
Payments Of Debt Issuance Costs
PaymentsOfDebtIssuanceCosts
|
-0 | USD | |
us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
187000 | USD | |
us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
10517000 | USD | |
us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
26564000 | USD | |
us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-13582000 | USD | |
us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-30575000 | USD | |
us-gaap |
Effect Of Exchange Rate On Cash And Cash Equivalents
EffectOfExchangeRateOnCashAndCashEquivalents
|
-324000 | USD | |
us-gaap |
Effect Of Exchange Rate On Cash And Cash Equivalents
EffectOfExchangeRateOnCashAndCashEquivalents
|
397000 | USD | |
us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
8338000 | USD | |
us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
-4633000 | USD | |
CY2019Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
13517000 | USD |
CY2018Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
12991000 | USD |
CY2020Q3 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
21855000 | USD |
CY2019Q3 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
8358000 | USD |
us-gaap |
Interest Paid Net
InterestPaidNet
|
1315000 | USD | |
us-gaap |
Interest Paid Net
InterestPaidNet
|
1558000 | USD | |
us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
5034000 | USD | |
us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
5607000 | USD | |
us-gaap |
Capital Lease Obligations Incurred
CapitalLeaseObligationsIncurred
|
771000 | USD | |
us-gaap |
Capital Lease Obligations Incurred
CapitalLeaseObligationsIncurred
|
206000 | USD | |
nrc |
Stock Tendered Cashless Exercise Of Stock Options
StockTenderedCashlessExerciseOfStockOptions
|
5560000 | USD | |
nrc |
Stock Tendered Cashless Exercise Of Stock Options
StockTenderedCashlessExerciseOfStockOptions
|
2295000 | USD | |
CY2020Q3 | nrc |
Incremental Costs Of Obtaining A Contract Deferred During Period
IncrementalCostsOfObtainingAContractDeferredDuringPeriod
|
717000 | USD |
CY2019Q3 | nrc |
Incremental Costs Of Obtaining A Contract Deferred During Period
IncrementalCostsOfObtainingAContractDeferredDuringPeriod
|
1000000.0 | USD |
nrc |
Incremental Costs Of Obtaining A Contract Deferred During Period
IncrementalCostsOfObtainingAContractDeferredDuringPeriod
|
2900000 | USD | |
nrc |
Incremental Costs Of Obtaining A Contract Deferred During Period
IncrementalCostsOfObtainingAContractDeferredDuringPeriod
|
1800000 | USD | |
CY2020Q3 | us-gaap |
Capitalized Contract Cost Net Noncurrent
CapitalizedContractCostNetNoncurrent
|
4500000 | USD |
CY2019Q4 | us-gaap |
Capitalized Contract Cost Net Noncurrent
CapitalizedContractCostNetNoncurrent
|
4200000 | USD |
CY2020Q3 | us-gaap |
Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
|
736000 | USD |
CY2019Q3 | us-gaap |
Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
|
748000 | USD |
us-gaap |
Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
|
2538000 | USD | |
us-gaap |
Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
|
2098000 | 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 |
CY2018Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
176000 | USD |
us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
40000 | USD | |
us-gaap |
Allowance For Doubtful Accounts Receivable Write Offs
AllowanceForDoubtfulAccountsReceivableWriteOffs
|
91000 | USD | |
us-gaap |
Allowance For Doubtful Accounts Receivable Recoveries
AllowanceForDoubtfulAccountsReceivableRecoveries
|
13000 | USD | |
CY2019Q3 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
138000 | USD |
CY2020Q3 | us-gaap |
Long Term Debt
LongTermDebt
|
31706000 | USD |
CY2019Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
34281000 | USD |
CY2020Q3 | us-gaap |
Long Term Debt Fair Value
LongTermDebtFairValue
|
34158000 | USD |
CY2019Q4 | us-gaap |
Long Term Debt Fair Value
LongTermDebtFairValue
|
35205000 | USD |
CY2019Q4 | us-gaap |
Sales And Excise Tax Payable Current And Noncurrent
SalesAndExciseTaxPayableCurrentAndNoncurrent
|
775000 | USD |
CY2020Q3 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
33477000 | USD |
CY2019Q3 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
32465000 | USD |
us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
98503000 | USD | |
us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
95359000 | USD | |
CY2020Q3 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
17426000 | USD |
CY2019Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
11639000 | USD |
CY2020Q3 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
17328000 | USD |
CY2019Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
16354000 | USD |
us-gaap |
Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
|
15366000 | USD | |
us-gaap |
Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
|
15214000 | USD | |
nrc |
Contract With Customer Liability Billings
ContractWithCustomerLiabilityBillings
|
16352000 | USD | |
nrc |
Contract With Customer Liability Billings
ContractWithCustomerLiabilityBillings
|
17829000 | USD | |
us-gaap |
Contract With Customer Asset Reclassified To Receivable
ContractWithCustomerAssetReclassifiedToReceivable
|
100000 | USD | |
us-gaap |
Contract With Customer Asset Reclassified To Receivable
ContractWithCustomerAssetReclassifiedToReceivable
|
51000 | USD | |
us-gaap |
Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
|
12000 | USD | |
us-gaap |
Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
|
-274000 | USD | |
nrc |
Contract With Customer Asset Increase Revenue Recognized Conditional Consideration
ContractWithCustomerAssetIncreaseRevenueRecognizedConditionalConsideration
|
238000 | USD | |
nrc |
Contract With Customer Asset Increase Revenue Recognized Conditional Consideration
ContractWithCustomerAssetIncreaseRevenueRecognizedConditionalConsideration
|
131000 | USD | |
CY2020Q3 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.179 | pure |
CY2019Q3 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.172 | pure |
us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.081 | pure | |
us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.187 | pure | |
CY2020Q3 | nrc |
Deferred Tax Liabilities Employer Social Security Tax Break Under Cares Act
DeferredTaxLiabilitiesEmployerSocialSecurityTaxBreakUnderCARESAct
|
800000 | USD |
CY2020Q3 | us-gaap |
Secured Debt Current
SecuredDebtCurrent
|
4008000 | USD |
CY2019Q4 | us-gaap |
Secured Debt Current
SecuredDebtCurrent
|
4378000 | USD |
CY2020Q3 | us-gaap |
Deferred Finance Costs Net
DeferredFinanceCostsNet
|
115000 | USD |
CY2019Q4 | us-gaap |
Deferred Finance Costs Net
DeferredFinanceCostsNet
|
108000 | USD |
CY2020Q3 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
27583000 | USD |
CY2019Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
29795000 | USD |
us-gaap |
Employee Service Share Based Compensation Nonvested Awards Total Compensation Cost Not Yet Recognized Period For Recognition1
EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
|
P3Y1M6D | ||
CY2020Q3 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
1100000 | USD |
us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
1600000 | USD | |
us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
0 | USD | |
CY2019Q3 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
8092000 | USD |
CY2020Q3 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
12264000 | USD |
us-gaap |
Participating Securities Distributed And Undistributed Earnings Loss Basic
ParticipatingSecuritiesDistributedAndUndistributedEarningsLossBasic
|
80000 | USD | |
CY2020Q3 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
9561000 | USD |
CY2019Q4 | us-gaap |
Goodwill
Goodwill
|
57935000 | USD |
us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
-60000 | USD | |
CY2020Q3 | us-gaap |
Goodwill
Goodwill
|
57875000 | USD |
CY2019Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
12270000 | USD |
CY2020Q3 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
11993000 | USD |
CY2019Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
11733000 | USD |
CY2020Q3 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
1462000 | USD |
CY2019Q4 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
1728000 | USD |
CY2020Q3 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
45143000 | USD |
CY2019Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
42078000 | USD |
CY2020Q3 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
32876000 | USD |
CY2019Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
28548000 | USD |
CY2020Q3 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
12267000 | USD |
CY2019Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
13530000 | USD |
CY2020Q3 | us-gaap |
Profit Loss
ProfitLoss
|
9578000 | USD |
CY2019Q3 | us-gaap |
Profit Loss
ProfitLoss
|
8119000 | USD |
us-gaap |
Profit Loss
ProfitLoss
|
29048000 | USD | |
us-gaap |
Profit Loss
ProfitLoss
|
23708000 | USD | |
CY2020Q3 | us-gaap |
Participating Securities Distributed And Undistributed Earnings Loss Basic
ParticipatingSecuritiesDistributedAndUndistributedEarningsLossBasic
|
17000 | USD |
CY2019Q3 | us-gaap |
Participating Securities Distributed And Undistributed Earnings Loss Basic
ParticipatingSecuritiesDistributedAndUndistributedEarningsLossBasic
|
27000 | USD |
us-gaap |
Participating Securities Distributed And Undistributed Earnings Loss Basic
ParticipatingSecuritiesDistributedAndUndistributedEarningsLossBasic
|
55000 | USD | |
us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
28993000 | USD | |
us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
23628000 | USD | |
CY2020Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25219000 | |
CY2019Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
24827000 | |
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25113000 | ||
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
24794000 | ||
CY2020Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.38 | |
CY2019Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.33 | |
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.15 | ||
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.95 | ||
CY2020Q3 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
9561000 | USD |
CY2019Q3 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
8092000 | USD |
us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
28993000 | USD | |
us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
23628000 | USD | |
CY2020Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25219000 | |
CY2019Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
24827000 | |
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
25113000 | ||
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
24794000 | ||
CY2020Q3 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
485000 | |
CY2019Q3 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
914000 | |
us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
588000 | ||
us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
830000 | ||
CY2020Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25704000 | |
CY2019Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25741000 | |
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25701000 | ||
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
25624000 | ||
CY2020Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.37 | |
CY2019Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.31 | |
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.13 | ||
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.92 | ||
CY2020Q3 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
79880000 | USD |
CY2019Q4 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
81528000 | USD |
CY2020Q3 | us-gaap |
Assets
Assets
|
127246000 | USD |
CY2019Q4 | us-gaap |
Assets
Assets
|
110685000 | USD |