7Baggers

FARO Technologies, Inc
(NASDAQ:FARO) 

FARO stock logo

FARO Technologies, Inc. designs, develops, manufactures, markets, and supports software driven three-dimensional (3D) measurement, imaging, and realization solutions worldwide. It operates through three segments: 3D Manufacturing, Construction BIM, and Emerging Verticals. The company offers FaroArm,...

Full Time Employees: 1,818
Sector: Technology
Industry: Scientific & Technical Instruments

Share this website to your friends
• Market Cap:
• Exchange:
• Shs Outstanding:
• Employees:
• Beta:
• Return on Equity (ROE) ttm:
• Return on Assets (ROA) ttm:
• EPS ttm:
• Book value per Share:
• Cash per Share:
• Current ast per Share:
• P/E ttm:
• P/E forward:
• P/E ttm high:
• P/E ttm low:
• P/S ttm:
• P/B ttm:
• P/FCF ttm:
• PEG ratio:
• Cash Ratio ttm:
• Quick Ratio ttm:
• Current Ratio ttm:
• Gross Mgn ttm:
• EBITDA Mgn ttm:
• Operating Mgn ttm:
• Net Income Mgn ttm:
• Trailing Div yield:
• Forward Div yield:
• Payout Ratio ttm:
• Ex-Dividend date:
• Target Price High:
• Target Price Low:
• Target Price Mean:
• Number of Analysts:
• Debt Ratio ttm:
• Debt to Equity ttm:
• Total Net Debt:
At a glance:
Bull Thesis:
Bear Thesis:
Main Competitors:
Moat:
Income Statements:
Quarterly
Annual
    Unit: USD2025-03-31 2024-12-31 2024-09-30 2024-06-30 2024-03-31 2023-12-31 2023-09-30 2023-06-30 2023-03-31 2022-12-31 2022-09-30 2022-06-30 2022-03-31 2021-12-31 2021-09-30 2021-06-30 2021-03-31 2020-12-31 2020-09-30 2020-06-30 2020-03-31 2019-12-31 2019-09-30 2019-06-30 2019-03-31 2018-12-31 2018-09-30 2018-06-30 2018-03-31 2017-12-31 2017-09-30 2017-06-30 2017-03-31 2016-12-31 2016-09-30 2016-06-30 2016-03-31 2015-12-31 2015-09-26 2015-06-27 2015-03-28 2014-12-31 2014-09-27 2014-06-28 2014-03-29 2013-12-31 2013-09-28 2013-06-29 2013-03-30 2012-12-31 2012-09-29 2012-06-30 2012-03-31 2011-12-31 2011-10-01 2011-07-02 2011-04-02 2010-12-31 2010-10-02 2010-07-03 2010-04-03 2009-12-31 2009-10-03 2009-07-04 2009-04-04 2008-12-31 2008-09-27 2008-06-28 2008-03-29 2007-12-31 2007-09-29 2007-06-30 2007-03-31 2006-12-31 2006-09-30 2006-07-01 2006-04-01 2005-12-31 2005-10-01 2005-07-02 2005-04-02 2004-12-31 2004-10-02 2004-07-03 2003-09-27 2003-06-28 2003-03-29 2002-12-31 2002-09-30 2002-06-30 
                                                                                              
      sales
                                                                     56,315,000 49,095,000 57,749,000 46,090,000 59,228,000 44,521,000 47,579,000 40,289,000 43,942,000 38,365,000 38,042,000 32,056,000 34,481,000 32,598,000 30,895,000 27,617,000 28,542,302 23,375,534 24,076,847 19,183,956 16,243,469 13,404,265 15,723,469 11,816,696 10,116,596 
      product
    62,975,000 73,885,000 61,461,000 61,312,000 63,536,000 78,818,000 66,911,000 67,603,000 65,240,000 265,097,985 65,581 59,702,000 56,730,000 78,355,000 57,838,000 60,275,000 54,635,000 71,721,000 48,082,000 42,259,000 56,525,000 89,245,000 63,641,000 67,992,000 68,800,000 88,984,000 75,817,000 75,720,000 70,581,000 84,446,000 68,563,000 62,533,000 62,380,000 73,778,000 61,280,000 61,640,000 59,312,000 77,558,000 57,803,000 69,437,000 55,044,000 89,362,000 67,581,000 67,382,000 59,822,000 76,171,000 55,014,000 55,174,000 52,482,000 68,775,000 49,274,000 55,432,000 54,424,000 65,953,000 54,032,000 49,692,000 42,958,000 49,456,000 36,725,000 37,212,000 33,938,000 38,422,000 27,876,000 27,203,000 24,214,000                          
      service
    19,888,000 19,650,000 21,102,000 20,773,000 20,708,000 20,022,000 19,902,000 20,608,000 19,727,000 80,425,109 19,751 20,215,000 19,926,000 21,849,000 21,331,000 21,835,000 21,696,000 21,232,000 22,654,000 18,305,000 22,990,000 14,896,000 26,875,000 25,499,000 24,817,000 23,860,000 23,888,000 22,524,000 22,253,000 21,977,000 21,687,000 20,149,000 19,182,000 17,920,000 18,320,000 16,898,000 16,436,000 13,769,000 14,704,000 14,338,000 14,895,000 14,791,000 14,658,000 14,678,000 13,552,000 13,724,000 13,176,000 13,155,000 12,888,000 11,895,000 11,460,000 11,330,000 10,805,000 11,127,000 10,775,000 10,019,000 9,608,000 9,059,000 8,561,000 8,493,000 8,331,000 7,604,000 7,837,000 7,313,000 7,235,000                          
      total sales
    82,863,000 93,535,000 82,563,000 82,085,000 84,244,000 98,840,000 86,813,000 88,211,000 84,967,000 345,523,094 85,332 79,917,000 76,656,000 100,204,000 79,169,000 82,110,000 76,331,000 92,953,000 70,736,000 60,564,000 79,515,000 104,141,000 90,516,000 93,491,000 93,617,000 112,844,000 99,705,000 98,244,000 92,834,000 106,423,000 90,250,000 82,682,000 81,562,000 91,698,000 79,600,000 78,538,000 75,748,000 91,327,000 72,507,000 83,775,000 69,939,000 104,153,000 82,239,000 82,060,000 73,374,000 89,895,000 68,190,000 68,329,000 65,370,000 80,670,000 60,734,000 66,762,000 65,229,000 77,080,000 64,807,000 59,711,000 52,566,000 58,515,000 45,286,000 45,705,000 42,269,000 46,026,000 35,713,000 34,516,000 31,449,000                          
      cost of sales
                                                                     24,043,000 20,086,000 21,510,000 18,384,000 23,701,000 18,065,000 18,355,000 16,453,000 18,125,000 16,121,000 15,480,000 13,221,000 14,967,000 14,913,000 12,505,000 10,274,000 11,995,164 8,618,268 8,848,915 8,153,080 6,183,034 5,899,580 6,520,510 5,552,740 5,207,726 
      total cost of sales
    35,626,000 40,454,000 36,587,000 37,296,000 40,937,000 48,554,000 45,139,000 54,888,000 45,251,000 169,884,822 42,067 39,480,000 35,630,000 44,497,000 36,838,000 36,628,000 35,924,000 42,173,000 34,438,000 31,668,000 35,642,000 60,540,000 39,744,000 41,172,000 38,598,000 48,293,000 47,388,000 40,553,000 39,048,000 44,329,000 38,216,000 35,922,000 37,813,000 43,026,000 36,921,000 34,602,000 33,075,000 42,678,000 37,636,000 39,229,000 30,328,000 46,880,000 36,198,000 36,543,000 33,291,000 40,574,000 29,369,000 31,403,000 28,545,000 37,601,000 28,430,000 29,702,000 28,043,000 33,568,000 28,418,000 26,195,000 22,294,000 23,979,000 18,903,000 18,617,000 16,878,000 20,543,000 16,111,000 15,152,000 15,189,000                          
      gross profit
    47,237,000 53,081,000 45,976,000 44,789,000 43,307,000 50,286,000 41,674,000 33,323,000 39,716,000 175,638,272 43,265 40,437,000 41,026,000 55,707,000 42,331,000 45,482,000 40,407,000 50,780,000 36,298,000 28,896,000 43,873,000 43,601,000 50,772,000 52,319,000 55,019,000 64,551,000 52,317,000 57,691,000 53,786,000 62,094,000 52,034,000 46,760,000 43,749,000 48,672,000 42,679,000 43,936,000 42,673,000 48,649,000 34,871,000 44,546,000 39,611,000 57,273,000 46,041,000 45,517,000 40,083,000 49,321,000 38,821,000 36,926,000 36,825,000 43,069,000 32,304,000 37,060,000 37,186,000 43,512,000 36,389,000 33,516,000 30,272,000 34,536,000 26,383,000 27,088,000 25,391,000 25,483,000 19,602,000 19,364,000 16,260,000 32,272,000 29,009,000 36,239,000 27,706,000 35,527,000 26,456,000 29,224,000 23,836,000 25,817,000 22,244,000 22,562,000 18,835,000 19,514,000 17,685,000 18,390,000 17,343,000 16,547,138 14,757,266 15,227,932 11,030,876 10,060,435 7,504,685 9,202,959 6,263,956 4,908,870 
      yoy
    9.07% 5.56% 10.32% 34.41% 9.04% -71.37% 96222.66% -17.59% -3.19% 215.29% -99.90% -11.09% 1.53% 9.70% 16.62% 57.40% -7.90% 16.47% -28.51% -44.77% -20.26% -32.45% -2.95% -9.31% 2.29% 3.96% 0.54% 23.38% 22.94% 27.58% 21.92% 6.43% 2.52% 0.05% 22.39% -1.37% 7.73% -15.06% -24.26% -2.13% -1.18% 16.12% 18.60% 23.27% 8.85% 14.52% 20.17% -0.36% -0.97% -1.02% -11.23% 10.57% 22.84% 25.99% 37.93% 23.73% 19.22% 35.53% 34.59% 39.89% 56.16% -21.04% -32.43% -46.57% -41.31% -9.16% 9.65% 24.00% 16.24% 37.61% 18.94% 29.53% 26.55% 32.30% 25.78% 22.69% 8.60% 17.93% 19.84% 20.76% 57.22% 64.48% 96.64% 65.47% 76.10% 104.94%     
      qoq
    -11.01% 15.45% 2.65% 3.42% -13.88% 20.67% 25.06% -16.10% -77.39% 405859.26% -99.89% -1.44% -26.35% 31.60% -6.93% 12.56% -20.43% 39.90% 25.62% -34.14% 0.62% -14.12% -2.96% -4.91% -14.77% 23.38% -9.32% 7.26% -13.38% 19.33% 11.28% 6.88% -10.11% 14.04% -2.86% 2.96% -12.28% 39.51% -21.72% 12.46% -30.84% 24.40% 1.15% 13.56% -18.73% 27.05% 5.13% 0.27% -14.50% 33.32% -12.83% -0.34% -14.54% 19.57% 8.57% 10.72% -12.35% 30.90% -2.60% 6.68% -0.36% 30.00% 1.23% 19.09% -49.62% 11.25% -19.95% 30.80% -22.01% 34.29% -9.47% 22.60% -7.67% 16.06% -1.41% 19.79% -3.48% 10.34% -3.83% 6.04% 4.81% 12.13% -3.09% 38.05% 9.65% 34.06% -18.45% 46.92% 27.60%  
      operating expenses
                                                                                              
      selling, general and administrative
    33,818,000 34,360,000 34,041,000 32,590,000 39,593,000 39,429,000 37,970,000 38,561,000 41,376,000 146,548,266 37,226 36,018,000 35,490,000 35,859,000 33,433,000 33,594,000 33,348,000 35,304,000 30,163,000 30,036,000 36,324,000                                                                      
      research and development
    9,485,000 11,428,000 9,771,000 9,833,000 9,024,000 9,238,000 8,188,000 11,662,000 12,718,000 49,378,244 12,586 12,042,000 12,128,000 12,297,000 12,731,000 11,760,000 11,973,000 11,541,000 10,754,000 10,186,000 10,415,000 11,127,000 10,783,000 9,091,000 9,935,000 10,342,000 9,975,000 9,983,000 9,406,000 8,846,000 9,019,000 9,045,000 8,466,000 7,822,000 7,953,000 7,259,000 7,091,000 7,128,000 5,820,000 7,254,000 6,356,000 8,070,000 7,352,000 6,658,000 5,430,000 6,241,000 5,884,000 5,162,000 5,125,000 4,580,000 4,065,000 4,525,000 4,408,000 4,159,000 3,591,000 3,814,000 3,632,000 3,854,000 2,850,000 2,997,000 2,989,000 3,047,000 2,802,000 3,285,000 3,479,000 3,503,000 3,237,000 3,172,000 2,713,000 3,127,000 2,881,000 2,276,000 1,972,000 1,838,000 1,741,000 1,797,000 1,852,000 1,616,000 1,864,000 1,633,000 1,327,000 1,457,403 1,335,896 1,206,337 1,135,452 1,066,155 877,468 694,633 966,398 1,149,625 
      restructuring costs
    120,000 2,568,000  616,000  263,000 2,442,000 8,450,000 4,238,000 4,611,488 580 1,333,000 600,000 3,689,000 1,376,000 779,000 1,524,000 1,243,000 239,000 636,000 13,688,000                                                                      
      total operating expenses
    43,423,000 48,356,000 43,812,000 43,039,000 48,617,000 48,930,000 48,600,000 58,673,000 58,332,000 200,537,998 50,392 49,393,000 48,218,000 51,845,000 47,540,000 46,133,000 46,845,000 48,088,000 41,156,000 40,858,000 60,427,000 91,809,000 56,663,000 57,212,000 54,661,000 58,705,000 55,029,000 55,764,000 53,093,000 52,943,000 49,684,000 50,933,000 45,755,000 45,056,000 41,838,000 39,439,000 38,343,000 41,885,000 35,793,000 39,122,000 37,755,000 44,295,000 37,048,000 37,108,000 33,123,000 37,952,000 31,224,000 31,440,000 31,123,000 31,842,000 27,281,000 30,189,000 28,753,000 30,659,000 26,422,000 27,762,000 25,988,000 28,356,000 23,537,000 22,567,000 22,011,000 23,016,000 21,852,000 22,936,000 23,893,000 27,714,000 26,391,000 28,382,000 23,802,000 27,343,000 25,455,000 22,744,000 20,390,000 21,959,000 18,880,000 21,599,000 18,761,000 18,776,000 14,631,000 16,148,000 13,150,000 13,751,771 10,922,556 10,610,286 8,319,189 8,495,610 7,045,573 7,442,222 6,607,154 7,344,464 
      income from operations
    3,814,000 4,725,000 2,164,000 1,750,000 -5,310,000 1,356,000 -6,926,000 -25,350,000 -18,616,000 -24,899,726 -7,127 -8,956,000 -7,192,000 3,862,000 -5,209,000 -651,000 -6,438,000 2,692,000 -4,858,000 -11,962,000 -16,554,000 -48,208,000 -5,891,000 -4,893,000 358,000 5,846,000 -2,712,000 1,927,000 693,000 9,151,000 2,350,000 -4,173,000 -2,006,000 3,616,000 841,000 4,497,000 4,330,000 6,764,000 -922,000 5,424,000 1,856,000 12,978,000 8,993,000 8,409,000 6,960,000 11,369,000 7,597,000 5,486,000 5,702,000 11,227,000 5,023,000 6,871,000 8,433,000 12,853,000 9,967,000 5,754,000 4,284,000 6,180,000 2,846,000 4,521,000 3,380,000 2,467,000 -2,250,000 -3,572,000 -7,633,000 4,558,000 2,618,000 7,857,000 3,904,000 8,184,000 1,001,000 6,480,000 3,446,000 3,858,000 3,364,000 963,000 74,000 738,000 3,054,000 2,242,000 4,193,000 2,947,116.25 3,834,710 4,617,646 2,711,687 1,564,824 459,112 1,760,737 -343,198 -2,435,594 
      yoy
    -171.83% 248.45% -131.24% -106.90% -71.48% -105.45% 97079.74% 183.05% 158.84% -744.74% -99.86% 1275.73% 11.71% 43.46% 7.23% -94.56% -61.11% -105.58% -17.54% 144.47% -4724.02% -924.63% 117.22% -353.92% -48.34% -36.12% -215.40% -146.18% -134.55% 153.07% 179.43% -192.80% -146.33% -46.54% -191.21% -17.09% 133.30% -47.88% -110.25% -35.50% -73.33% 14.15% 18.38% 53.28% 22.06% 1.26% 51.24% -20.16% -32.38% -12.65% -49.60% 19.41% 96.85% 107.98% 250.21% 27.27% 26.75% 150.51% -226.49% -226.57% -144.28% -45.88% -185.94% -145.46% -295.52% -44.31% 161.54% 21.25% 13.29% 112.13% -70.24% 572.90% 4556.76% 422.76% 10.15% -57.05% -98.24% -74.96% -20.36% -51.45% 54.63% 88.34% 735.24% 162.26% -890.12% -164.25%     
      qoq
    -19.28% 118.35% 23.66% -132.96% -491.59% -119.58% -72.68% 36.17% -25.24% 349271.77% -99.92% 24.53% -286.22% -174.14% 700.15% -89.89% -339.15% -155.41% -59.39% -27.74% -65.66% 718.33% 20.40% -1466.76% -93.88% -315.56% -240.74% 178.07% -92.43% 289.40% -156.31% 108.03% -155.48% 329.96% -81.30% 3.86% -35.98% -833.62% -117.00% 192.24% -85.70% 44.31% 6.94% 20.82% -38.78% 49.65% 38.48% -3.79% -49.21% 123.51% -26.90% -18.52% -34.39% 28.96% 73.22% 34.31% -30.68% 117.15% -37.05% 33.76% 37.01% -209.64% -37.01% -53.20% -267.46% 74.10% -66.68% 101.26% -52.30% 717.58% -84.55% 88.04% -10.68% 14.68% 249.33% 1201.35% -89.97% -75.83% 36.22% -46.53% 42.27% -23.15% -16.96% 70.29% 73.29% 240.84% -73.93% -613.04% -85.91%  
      other expense
    467,000 555,000 175,000 -43,000    476,000  -3,232,923 -1,428 -1,636,000 -13,000 503,000 299,000 883,000 -1,615,000 97,000 -256,000 117,000 473,000 -85,000 514,000 1,689,000 195,000 271,000 226,000 509,000 184,000 -510,000 -147,000 459,000 8,000 -2,000 -167,000 240,000 751,000 -1,150,000 131,000 83,000 1,307,000 -16,000 -89,000 -149,000 160,000 -71,000 809,000 504,000 115,000 529,000 -46,000 401,000 -140,000 193,750 780,000 124,000 -129,000 983,000 -544,000 1,839,000 505,000 -233,000 -183,000 -837,000 661,000 1,461,000 652,000 419,000 -237,000 -471,000 -720,000 -382,000 -325,000                  
      interest expense
    888,000 936,000 1,023,000 761,000 831,000 819,000 691,000 1,003,000 835,000 -35,972 -24 -12,000 8,000 1,000 5,000 39,000 10,000 101,750 161,000 212,000 34,000 709,000 -24,000 240,000          167,000 -21,000   92,000 7,000   2,000 5,000 1,000  6,000 2,000  1,000 6,000 2,000 7,000 13,000 4,000 2,000 2,000 29,000 3,000 2,000 2,000 27,000 5,000 3,000 4,000 3,000 2,000 2,000 7,000 441,000 2,000 3,000 2,000 2,000 -7,000 -3,000 -4,000 -2,000 -6,000 -4,000 -76,000 -2,000 -1,501.5 -1,283 -2,581 -13,345 -18,661 -15,897 -18,355 -6,584 -1,981 
      income before income tax
    2,459,000 -1,042,000 966,000 1,032,000                                                              3,679,750 2,511,000 7,887,000 4,321,000 3,382,250 2,308,000 7,196,000 4,025,000 4,428,000 3,703,000 1,040,000 605,000 404,000 2,975,000 2,225,000 4,294,000 3,057,939 3,755,587 4,862,509       
      income tax expense
    1,553,000 4,220,000 1,255,000 1,556,000 1,101,000 -2,354,000 1,520,000 1,416,000 1,933,000 5,100,648 586 1,266,000 2,500,000        -2,238,000 1,577,000 -182,000 -417,000 155,000 -445,000 -354,000 300,000 127,000 20,785,000 947,000 -918,000 -471,000 118,000 -61,000 919,000 543,000 -952,000 -176,000 1,217,000 -96,000 1,899,000 -2,118,000 2,251,000 1,841,000 3,192,000 1,763,000 1,370,000 1,028,000 2,870,000 1,414,000 1,749,000 1,911,000 2,952,000 2,775,000 1,434,000 1,167,000 377,000 1,098,000 869,000 803,000 3,343,000 -766,000 -599,000 -1,554,000 1,443,000 500,000 1,522,000 943,000 1,103,000 1,603,000 1,410,000 827,000 770,000 514,000 187,000 109,000 221,000 360,000 313,000 825,000 -1,857,055 690,176 759,918 488,150 240,334 72,255 190,073 -16,333 -2,801 
      net income
    906,000 -986,000 -289,000 -524,000 -7,267,000 1,588,000 -8,756,000 -28,245,000 -21,164,000 -26,731,479 -6,261 -8,574,000 -9,687,000 -31,712,000 -3,855,000 -1,176,000 -3,221,000 27,408,000 -3,024,000 -8,932,000 -14,823,000 -49,695,000 -6,199,000 -6,405,000 152,000 5,758,000 -2,488,000 1,205,000 455,000 -11,058,000 1,628,000 -3,625,000 -1,461,000 3,545,000 1,090,000 3,392,000 3,080,000 8,885,000 -884,000 4,148,000 664,000 11,122,000 11,223,000 6,328,000 4,976,000 8,262,000 5,042,000 3,631,000 4,574,000 7,841,000 3,673,000 4,734,000 6,750,000 9,472,000 6,429,000 4,233,000 3,243,000 4,839,000 2,328,000 1,837,000 2,064,000 -620,000 -1,273,000 -2,104,000 -6,585,000 2,198,000 2,011,000 6,365,000 3,378,000 8,404,000 705,000 5,786,000 3,198,000 3,658,000 3,189,000 853,000 496,000 183,000 2,615,000 1,912,000 3,469,000 4,914,464 3,065,411 4,102,591 3,333,888 1,558,049 489,364 1,571,333 71,995 -2,006,136 
      yoy
    -112.47% -162.09% -96.70% -98.14% -65.66% -105.94% 139749.86% 229.43% 118.48% -15.71% -99.84% 629.08% 200.75% -215.70% 27.48% -86.83% -78.27% -155.15% -51.22% 39.45% -9851.97% -963.06% 149.16% -631.54% -66.59% -152.07% -252.83% -133.24% -131.14% -411.93% 49.36% -206.87% -147.44% -60.10% -223.30% -18.23% 363.86% -20.11% -107.88% -34.45% -86.66% 34.62% 122.59% 74.28% 8.79% 5.37% 37.27% -23.30% -32.24% -17.22% -42.87% 11.84% 108.14% 95.74% 176.16% 130.43% 57.12% -880.48% -282.88% -187.31% -131.34% -128.21% -163.30% -133.06% -294.94% -73.85% 185.25% 10.01% 5.63% 129.74% -77.89% 578.31% 544.76% 1898.91% 21.95% -55.39% -85.70% -96.28% -14.69% -53.40% 4.05% 215.42% 526.41% 161.09% 4530.72% -177.66%     
      qoq
    -191.89% 241.18% -44.85% -92.79% -557.62% -118.14% -69.00% 33.46% -20.83% 426852.23% -99.93% -11.49% -69.45% 722.62% 227.81% -63.49% -111.75% -1006.35% -66.14% -39.74% -70.17% 701.66% -3.22% -4313.82% -97.36% -331.43% -306.47% 164.84% -104.11% -779.24% -144.91% 148.12% -141.21% 225.23% -67.87% 10.13% -65.33% -1105.09% -121.31% 524.70% -94.03% -0.90% 77.35% 27.17% -39.77% 63.86% 38.86% -20.62% -41.67% 113.48% -22.41% -29.87% -28.74% 47.33% 51.88% 30.53% -32.98% 107.86% 26.73% -11.00% -432.90% -51.30% -39.50% -68.05% -399.59% 9.30% -68.41% 88.43% -59.80% 1092.06% -87.82% 80.93% -12.58% 14.71% 273.86% 71.98% 171.04% -93.00% 36.77% -44.88% -29.41% 60.32% -25.28% 23.06% 113.98% 218.38% -68.86% 2082.56% -103.59%  
      net income per share
    0.05 -0.05 -0.02 -0.03 -0.38 0.09 -0.46 -1.49 -1.12 -0.12 -0.34 -0.47 -0.53 -1.75 -0.21 -0.06 -0.18 1.55 -0.17 -0.5 -0.84 -2.86 -0.36 -0.37 0.01 0.34 -0.15 0.07 0.03 -0.66 0.1 -0.22 -0.09 0.22 0.07 0.2 0.19 0.51 -0.05 0.24 0.04 0.64 0.65 0.37 0.29 0.48 0.29 0.21 0.27 0.46 0.22 0.28 0.4 0.57 0.39 0.26 0.2 0.3 0.14 0.11 0.13 -0.04 -0.08 -0.13 -0.41 0.13 0.12 0.38 0.2 0.53 0.04 0.39 0.22 0.25 0.22 0.06 0.03 0.02 0.18 0.13 0.25 0.35 0.22 0.3 0.28 0.13 0.04 0.13 0.01 -0.17 
      weighted-average shares - basic
    19,052,385 19,151,551 19,266,217 19,293,778 19,046,855 18,917,778 18,953,251 18,920,675 18,816,110 18,318,191 18,436,615 18,266,747 18,240,299 18,187,946 18,194,960 18,161,110 18,076,410 17,769,958 17,797,390 17,747,739 17,616,964 17,383,415 17,367,228 17,333,996 17,280,365 17,043,167 17,122,705 16,966,928 16,837,754 16,711,534 16,708,446 16,700,718 16,684,164 16,654,786 16,674,176 16,659,115 16,609,084 17,288,665 17,395,824 17,384,382 17,335,464 17,247,727 17,258,029 17,233,012 17,205,892 17,087,104 17,095,066 17,097,973 17,009,773 16,910,830 16,944,120 16,921,012 16,788,241 16,503,773 16,609,005 16,448,229 16,253,121  16,160,378 16,148,233 16,124,886  16,093,759 16,069,312 16,227,363  16,637,497 16,627,540 16,606,673              13,932,463  12,036,348      
      weighted-average shares - diluted
    19,732,364 19,151,551 19,266,217 19,293,778 19,046,855 18,917,778 18,953,251 18,920,675 18,816,110 18,318,191 18,436,615 18,266,747 18,240,299 18,187,946 18,194,960 18,161,110 18,076,410 17,926,324 17,797,390 17,747,739 17,616,964 17,383,415 17,367,228 17,333,996 17,868,816 17,348,456 17,122,705 17,264,642 17,142,770 16,711,534 16,796,518 16,700,718 16,684,164 16,681,710 16,701,617 16,672,600 16,638,458 17,389,473 17,395,824 17,502,219 17,511,821 17,416,453 17,410,391 17,338,388 17,364,373 17,241,115 17,185,380 17,173,015 17,176,876 17,129,128 17,094,102 17,140,115 17,162,959 16,868,471 16,849,282 16,845,877 16,598,797  16,270,741 16,320,596 16,267,231  16,093,759 16,069,312 16,227,363  16,731,064 16,784,473 16,738,891              14,064,767  12,946,088      
      other income
        25,000 -31,250 -381,000  -220,000                                                                 350,000 153,000  375,000 -476,000 -191,000 -111,000 -29,000 146,248 -163,687 173,029 1,109,155 218,730 115,739 -199,697 304,504 392,915 
      loss before income tax
        -6,166,000 -766,000 -7,236,000 -26,829,000                                                                                   
      loss before income tax expense
            -19,231,000 -21,630,831 -5,675           -3,224,000 -6,381,000                                                                    
      loss before income tax benefit
               -7,308,000 -7,187,000 -2,979,750 -5,513,000 -1,573,000 -4,833,000 -8,528,750 -4,763,000 -12,291,000                                                                       
      income tax benefit
                 -916,750 -1,658,000 -397,000 -1,612,000 -1,834,000 -1,739,000 -3,359,000                                                                       
      income before income tax expense
                        -17,061,000   -6,822,000 307,000 5,313,000 -2,842,000 1,505,000 582,000 9,727,000 2,575,000 -4,543,000 -1,932,000 3,663,000 1,029,000 4,311,000 3,623,000 7,933,000 -1,060,000 5,365,000 568,000 13,021,000 9,105,000 8,579,000 6,817,000 11,454,000 6,805,000 5,001,000 5,602,000 10,711,000 5,087,000 6,483,000 8,661,000 12,424,000 9,204,000 5,667,000 4,410,000 5,216,000 3,426,000 2,706,000 2,867,000 2,723,000 -2,039,000 -2,703,000 -8,139,000                          
      selling and marketing
                         21,859,500 30,218,000 29,124,000 26,753,000 30,754,000 27,811,000 30,084,000 28,271,000 28,660,000 25,990,000 26,022,000 22,872,000 23,769,000 19,729,000 18,747,000 17,625,000 21,194,000 18,944,000 20,063,000 19,105,000 23,950,000 19,059,000 19,715,000                                               
      general and administrative
                         11,117,750 15,662,000 14,424,000 13,224,000 12,763,000 12,496,000 11,320,000 11,073,000 10,924,000 10,307,000 11,877,000 10,699,000 9,330,000 10,775,000 10,167,000 10,541,000 10,368,000 8,239,000 9,066,000 9,801,000 10,367,000 8,832,000 8,867,000 8,413,000 7,984,000 7,275,000 7,826,000 7,515,000 7,037,000 7,266,000 8,134,000 6,628,000 6,875,000 6,424,000 6,917,000 6,590,000 7,300,000 7,201,000 6,028,000 6,247,000 6,365,000 6,158,000 6,134,000 6,299,000 6,870,000 6,614,000 7,014,000 5,646,000 7,012,000 7,978,000 5,495,000 5,023,000 6,258,000 5,519,000 7,130,000 5,647,000 4,534,000 3,169,000 4,368,000 3,467,000 3,329,148 3,216,588 2,621,353 2,160,923 2,297,315 1,750,566 2,170,680 1,975,530 2,169,447 
      depreciation and amortization
                           4,573,000 4,749,000 4,846,000 4,747,000 4,377,000 4,343,000 4,513,000 4,368,000 3,989,000 3,718,000 4,135,000 3,381,000 3,266,000 3,086,000 3,195,000 2,790,000 2,739,000 2,493,000 1,908,000 1,805,000 1,868,000 1,847,000 1,770,000 1,699,000 1,736,000 1,833,000 1,812,000 1,796,000 1,689,000 1,679,000 1,665,000 1,711,000 1,722,000 1,614,000 1,492,000 1,779,000 1,515,000 1,540,000 1,440,000 1,410,000 1,389,000 1,291,000 1,212,000 1,158,000 1,120,000 1,015,000 1,021,000 971,000 951,000 1,091,000 1,039,000 1,023,000 1,062,000 1,011,000 1,006,000 967,000 789,000 690,000 678,191 566,610 537,936 471,789 538,991 588,653 455,889 529,488 621,027 
      interest income
                            -144,000 -224,000 -96,000 -87,000 -73,000 -70,000 -78,000 -89,000 -82,000   -54,000 -44,000   -24,000 -19,000 -29,000 -28,000 -22,000 -17,000 -20,000 -19,000 -19,000 -16,000 -19,000 -20,000 -20,000 -101,000 -17,000 -19,000 -39,000 -26,000 -22,000 -38,000 -26,000 -19,000 -28,000 -31,000 -36,000 -158,000 -546,000 -547,000 -456,000 -621,000     227,000 189,000 169,000 158,000 148,000 116,000 170,000 132,000 121,856 85,847 74,415 14,541 33,489 2,665 218,721 100,940 35,723 
      operating expenses:
                                                                                              
      selling
                                                17,433,000 21,957,000 16,366,000 16,716,000 16,650,000 18,413,000 14,154,000 15,841,000 16,038,000 17,960,000 14,696,000 15,309,000 14,152,000 15,710,000 11,707,000 12,027,000 11,235,000 12,164,000 11,482,000 12,128,000 12,824,000 16,129,000 15,382,000 17,076,000 14,428,000 16,183,000 13,625,000 14,022,000 12,304,000 12,824,000 10,597,000 11,610,000 10,251,000 11,620,000 8,631,000 9,358,000 7,666,000 8,287,029 5,803,462 6,233,296 4,331,615 4,484,859 3,787,438 4,113,516 3,135,738 3,415,740 
      interest
                                                                         -295,500 -590,000 -336,000 -256,000                  
      other income
                                                                               -88,000               
      employee stock options
                                                                                       11,364 219,410 108,290 41,448 7,504  -11,375 
      weighted average shares - basic
                                                                                 14,169,140    13,833,590  13,766,588       
      weighted average shares - diluted
                                                                                 14,442,248    14,023,159  14,154,243       
      net income before income tax
                                                                                        3,822,038 1,798,382     
      weighted-average shares—basic
                                                             16,153,831    16,125,449    16,632,608    15,443,259    14,397,050            11,936,466     
      weighted-average shares—diluted
                                                             16,365,826    16,125,449    16,734,403    15,722,215    14,560,331            12,721,397     
      income before income taxes
                                                                                          561,619 1,761,406 55,662 -2,008,937 
    Balance Sheets:
    Quarterly
    Annual
      Unit: USD2025-03-31 2024-12-31 2024-09-30 2024-06-30 2024-03-31 2023-12-31 2023-09-30 2023-06-30 2023-03-31 2022-12-31 2022-09-30 2022-06-30 2022-03-31 2021-12-31 2021-09-30 2021-06-30 2021-03-31 2020-12-31 2020-09-30 2020-06-30 2020-03-31 2019-12-31 2019-09-30 2019-06-30 2019-03-31 2018-12-31 2018-09-30 2018-06-30 2018-03-31 2017-12-31 2017-09-30 2017-06-30 2017-03-31 2016-12-31 2016-09-30 2016-06-30 2016-03-31 2015-12-31 2015-09-26 2015-06-27 2015-03-28 2014-12-31 2014-09-27 2014-06-28 2014-03-29 2013-09-28 2013-06-29 2013-03-30 2012-12-31 2012-09-29 2012-06-30 2012-03-31 2011-12-31 2011-10-01 2011-07-02 2011-04-02 2010-12-31 2010-10-02 2010-07-03 2010-04-03 2009-12-31 2009-10-03 2009-07-04 2009-04-04 2008-12-31 2008-09-27 2008-06-28 2008-03-29 2007-12-31 2007-09-29 2007-06-30 2007-03-31 2006-12-31 2006-09-30 2006-07-01 2006-04-01 2005-12-31 2005-10-01 2005-07-02 2005-04-02 2004-10-02 2004-07-03 2003-09-27 2003-06-28 2003-03-29 2002-12-31 2002-09-30 2002-06-30 
                                                                                              
        assets
                                                                                              
        current assets:
                                                                                              
        cash and cash equivalents
      92,445,000 88,703,000 88,913,000 97,914,000 79,518,000 76,787,000 79,919,000 68,228,000 68,564,000 37,812,000 48,534,000 101,969,000 107,192,000 121,989,000 125,814,000 133,337,000 169,957,000 185,633,000 163,637,000 173,700,000 157,240,000 133,634,000 119,083,000 120,604,000 110,696,000 108,783,000 115,098,000 133,554,000 138,826,000 140,960,000 129,841,000 117,594,000 105,858,000 106,169,000 121,349,000 133,541,000 120,278,000 107,356,000 95,975,000 90,576,000 96,066,000 109,289,000 116,910,000 129,835,000 122,716,000 116,905,000 111,308,000 104,598,000 93,233,000 80,505,000 74,748,000 73,588,000 64,540,000 54,345,000 57,339,000 53,282,000 50,722,000 44,625,000 41,929,000 38,331,000 35,078,000 27,401,000 26,790,000 61,227,000 23,494,000 20,160,000 16,757,000 19,486,000 25,798,000 25,409,000 19,213,000 17,291,000 15,689,000 8,948,000 6,917,000 6,398,000 9,278,000 10,959,000 10,950,000 13,501,000 12,174,371 12,681,039 5,484,017 3,550,949 4,920,881 4,023,614 4,750,381 3,499,787 
        short-term investments
      10,189,000 9,999,000   19,763,000 19,496,000  20,240,000 20,024,000            15,955,000 24,870,000 24,868,000 24,819,000 24,831,000 24,793,000 19,871,000 10,998,000 10,957,000 10,997,000 10,970,000 21,970,000 42,912,000 42,942,000 31,957,000 42,975,000 42,952,000 42,994,000 64,984,000 64,993,000 64,993,000 64,995,000 64,996,000 64,996,000 64,994,000 64,995,000 64,993,000 64,991,000 64,990,000 64,989,000 64,989,000 64,993,000 64,997,000 64,995,000 64,992,000 64,987,000 64,986,000 64,985,000 64,985,000 64,986,000 64,986,000 64,979,000 64,973,000 32,975,000 81,965,000 82,370,000 77,765,000 83,160,000 77,375,000 72,780,000 21,021,000 15,790,000 15,790,000 15,790,000 15,790,000 15,890,000 16,490,000 10,990,000 14,790,000 21,485,000 23,085,848 20,185,000 426,815 1,603,576 1,894,571    
        accounts receivable
      85,669,000 87,022,000 83,208,000 84,868,000 88,908,000 92,028,000 88,363,000 88,293,000 90,238,000 90,326,000 75,347,000 70,915,000 76,745,000 78,523,000 58,875,000 59,966,000 59,821,000 64,616,000 47,533,000 48,113,000 58,834,000 76,162,000 64,708,000 74,430,000 76,237,000 88,927,000 75,361,000 71,641,000 71,631,000 72,105,000 60,449,000 58,805,000 60,633,000 61,364,000 57,431,000 56,825,000 60,122,000 69,918,000 63,811,000 70,002,000 62,339,000 83,959,000 68,939,000 65,979,000 64,739,000 52,939,000 51,717,000 53,721,000 62,559,000 51,014,000 53,246,000 48,731,000 57,512,000 50,670,000 46,951,000 47,533,000 51,862,000 43,218,000 40,348,000 40,550,000 42,944,000 35,697,000 32,901,000 30,701,000 49,713,000 45,354,000 52,819,000 48,146,000 54,767,000 44,554,000 44,959,000 40,053,000 42,706,000 36,866,000 34,497,000 28,011,000 28,654,000 28,424,000 25,940,000 23,515,000   17,731,615 14,174,674 13,555,089 14,236,160 10,524,900 9,469,603 
        inventories
      33,272,000 32,121,000 39,055,000 34,409,000 35,376,000 34,529,000 40,095,000 41,560,000 50,886,000 50,026,000 50,956,000 44,076,000 53,992,000 53,145,000 55,507,000 51,433,000 47,058,000 47,391,000 50,004,000 53,425,000 55,044,000 58,554,000 69,779,000 71,970,000 74,586,000 65,444,000 62,471,000 60,349,000 58,376,000 53,786,000 59,044,000 57,866,000 52,537,000 51,886,000 55,206,000 51,809,000 48,614,000 45,571,000 55,110,000 68,901,000 66,652,000 59,334,000 56,482,000 53,302,000 50,238,000 48,973,000 47,781,000 50,024,000 48,894,000 53,348,000 54,057,000 56,342,000 49,934,000 49,299,000 44,742,000 36,932,000 28,242,000 28,395,000 27,184,000 25,811,000 26,582,000 28,212,000 29,580,000 33,584,000 33,444,000 37,237,000 38,140,000 37,022,000 29,100,000 26,440,000 22,318,000 21,796,000 23,429,000 26,132,000 26,451,000 27,392,000 28,650,000 26,069,000 22,568,000 19,215,000 21,529,078 19,954,126 12,628,011  10,644,873 9,126,857 8,059,011 7,859,225 
        prepaid expenses and other current assets
      33,610,000 30,326,000 34,252,000 30,468,000 32,854,000 38,768,000 37,325,000 38,551,000 45,830,000 41,201,000 33,801,000 25,248,000 23,063,000 19,793,000 28,776,000 26,978,000 27,231,000 26,295,000 23,566,000 20,795,000 21,237,000 28,996,000 28,084,000 26,437,000 24,210,000 28,795,000 22,024,000 21,086,000 19,119,000 16,311,000 20,919,000 22,989,000 17,829,000 16,304,000 20,426,000 16,592,000 19,573,000 18,527,000 21,997,000 18,818,000 17,809,000 17,021,000 15,901,000 14,945,000 15,183,000 14,614,000 11,823,000 13,106,000 11,186,000 10,383,000 10,617,000 11,426,000 9,207,000 10,713,000 10,621,000 8,821,000 8,045,000 9,414,000 7,471,000 8,805,000 6,016,000 12,225,000 10,291,000 8,746,000 7,879,000 9,097,000 8,786,000 9,646,000 6,719,000 7,115,000 6,197,000 6,442,000 3,222,000 4,478,000 3,046,000 2,818,000 2,200,000 2,943,000 3,817,000 2,668,000 2,330,781 2,369,318 1,008,364 891,354 755,819 1,142,576 898,703 1,271,388 
        total current assets
      255,185,000 248,171,000 245,428,000 247,659,000 256,419,000 261,608,000 245,702,000 256,872,000 275,542,000 219,365,000 208,638,000 242,208,000 260,992,000 273,450,000 268,972,000 271,714,000 304,067,000 323,935,000 284,740,000 296,033,000 308,310,000 322,216,000 306,522,000 318,260,000 310,560,000 316,742,000 294,825,000 297,628,000 298,909,000 294,159,000 281,223,000 279,224,000 279,769,000 286,230,000 294,988,000 309,289,000 299,293,000 292,158,000 307,385,000 318,800,000 313,719,000 340,534,000 329,111,000 334,987,000 322,952,000 304,633,000 293,547,000 292,465,000 288,078,000 266,329,000 263,847,000 260,375,000 251,487,000 234,371,000 229,116,000 215,716,000 208,312,000 196,157,000 186,159,000 182,965,000 180,079,000 173,055,000 170,813,000 173,659,000 202,076,000 200,252,000 200,079,000 201,473,000 196,600,000 178,993,000 115,778,000 103,160,000 102,681,000 94,979,000 89,580,000 83,070,000 87,427,000 82,157,000 80,082,000 81,938,000 77,261,918 73,464,587 37,278,822 32,063,820 31,771,233 29,966,744 27,289,370 25,542,133 
        non-current assets:
                                                                                              
        property, plant and equipment
      18,777,000 18,767,000 19,544,000 18,412,000 19,855,000 21,181,000 22,207,000 23,247,000 19,505,000 19,720,000 20,424,000 21,109,000 22,454,000 22,194,000 22,576,000 21,578,000 21,921,000 23,091,000 22,962,000 22,507,000                                                              3,415,667 2,415,583      
        operating lease right-of-use assets
      19,196,000  17,208,000 10,960,000 11,075,000  12,521,000 13,315,000 17,605,000  18,404,000 20,154,000 21,141,000  23,586,000 23,356,000                                                                         
        goodwill
      108,664,000 106,555,000 110,972,000 108,164,000 108,359,000 109,534,000 106,873,000 108,883,000 108,051,000 107,155,000 101,279,000 79,595,000 81,507,000 82,096,000 80,873,000 81,702,000 56,269,000 57,541,000 55,640,000 49,184,000 48,661,000 49,704,000 69,712,000 71,210,000 71,097,000 67,274,000 66,201,000 53,584,000 54,511,000 52,750,000 52,567,000 51,417,000 47,433,000 46,744,000 41,721,000 26,963,000 27,365,000 26,371,000 26,600,000 26,885,000 25,761,000 19,205,000 19,579,000 19,241,000 19,336,000 19,125,000 18,656,000 18,485,000 18,816,000 18,517,000 18,339,000 18,962,000 18,610,000 18,998,000 20,044,000 19,781,000 19,015,000 19,371,000 18,249,000 19,091,000 19,934,000 19,822,000 19,198,000 18,679,000 18,951,000 19,544,000 20,088,000 20,096,000 19,117,000 18,510,000 17,953,000 17,535,000 17,266,000 16,831,000 16,916,000 16,344,000 14,574,000 14,030,000 16,950,000 16,695,000 11,522,271        
        intangible assets
      43,459,000 44,133,000 46,325,000 46,135,000 47,057,000 47,891,000 46,999,000 48,643,000 48,793,000 48,978,000 48,094,000 28,382,000 27,223,000 25,616,000 24,714,000 24,252,000 13,254,000 13,301,000 13,475,000 12,744,000 13,820,000 14,471,000 27,530,000 28,659,000 29,507,000 33,054,000 36,030,000 23,842,000 25,399,000 22,540,000 22,983,000 23,313,000 21,386,000 22,279,000 21,967,000 15,573,000 16,030,000 15,985,000 16,171,000 16,399,000 16,933,000 9,109,000 8,834,000 8,466,000 8,273,000 7,972,000 7,252,000 7,186,000 7,048,000 6,727,000 6,670,000 6,790,000 6,849,000 6,978,000 7,233,000 7,363,000 7,204,000 7,224,000 7,208,000 7,576,000 7,985,000 8,199,000 8,222,000 8,338,000 8,580,000 8,869,000 9,169,000 6,391,000 5,970,000 5,967,000 5,857,000 6,080,000 6,221,000 19,172,000 6,459,000 6,299,000 6,395,000 6,900,000 3,539,000 3,567,000 11,375,894 24,668,542 23,403,648      
        service and sales demonstration inventory
      23,265,000 22,760,000 21,436,000 21,044,000 20,655,000 23,147,000 22,662,000 23,063,000 30,917,000 30,904,000 28,249,000 29,692,000 31,894,000 30,554,000 31,025,000 31,477,000 31,323,000 31,831,000 33,181,000 34,130,000 34,355,000 33,349,000 39,509,000 39,416,000 38,351,000 39,563,000 35,288,000 38,346,000 41,703,000 39,614,000 35,250,000 35,259,000 31,935,000 29,136,000 33,661,000 33,097,000 34,849,000 33,709,000                                                   
        deferred income tax assets
      23,090,000 23,005,000 24,826,000 24,792,000 24,933,000 25,027,000 24,093,000 24,221,000 24,271,000 24,192,000 18,092,000 19,635,000 20,713,000 21,277,000 46,700,000 47,251,000 46,208,000 47,450,000 23,833,000 21,153,000 21,036,000 18,766,000 14,693,000 14,732,000 14,696,000 14,719,000 15,685,000 15,691,000 15,738,000 15,606,000 14,498,000 14,442,000 14,478,000 7,565,000 8,619,000 7,547,000                                                     
        other long-term assets
      3,393,000 3,734,000 3,891,000 3,915,000 3,951,000 4,073,000 4,047,000 4,039,000 4,044,000 4,044,000 2,047,000 2,174,000 1,979,000 2,010,000 2,141,000 2,251,000 2,300,000 2,336,000 2,835,000 2,872,000 2,818,000 2,964,000 2,987,000 2,983,000 4,416,000 4,475,000 4,689,000 4,678,000 2,861,000 2,030,000 1,049,000 1,058,000 750,000 905,000    967,000                                                   
        total assets
      495,029,000 483,005,000 489,630,000 481,081,000 492,304,000 504,692,000 485,104,000 502,283,000 528,728,000 473,347,000 445,227,000 442,949,000 467,903,000 479,740,000 500,587,000 503,581,000 499,958,000 525,592,000 451,726,000 453,307,000 470,049,000 486,842,000 508,030,000 523,454,000 518,353,000 506,244,000 483,413,000 464,469,000 470,652,000 458,578,000 439,881,000 437,068,000 427,176,000 423,714,000 430,602,000 423,348,000 418,254,000 409,186,000 423,056,000 421,826,000 414,461,000 425,463,000 409,727,000 406,885,000 392,263,000 366,654,000 353,906,000 353,258,000 350,807,000 329,215,000 325,395,000 322,933,000 312,791,000 294,625,000 289,632,000 275,029,000 266,019,000 252,147,000 239,740,000 238,790,000 235,710,000 230,142,000 227,533,000 229,766,000 259,314,000 252,787,000 251,905,000 249,520,000 243,539,000 224,614,000 160,029,000 145,421,000 144,276,000 134,058,000 128,474,000 119,903,000 122,648,000 116,048,000 112,223,000 113,935,000 94,485,521 92,014,069 51,147,218 47,061,611 46,671,161 45,194,780 42,437,906 40,237,574 
        liabilities and shareholders’ equity
                                                                                              
        current liabilities:
                                                                                              
        accounts payable
      26,346,000 27,336,000 30,438,000 27,867,000 25,314,000 27,404,000 23,408,000 21,241,000 22,888,000 27,286,000 17,546,000 13,635,000 14,793,000 14,199,000 16,415,000 14,115,000 15,969,000 14,121,000 9,096,000 12,067,000 11,396,000 13,718,000 11,705,000 16,177,000 14,351,000 20,093,000 16,401,000 11,764,000 11,145,000 11,569,000 11,964,000 12,651,000 11,953,000 11,126,000 11,507,000 10,848,000 10,171,000 11,345,000 12,473,000 9,302,000 11,196,000 15,437,000 9,853,000 13,866,000 10,381,000 8,902,000 7,386,000 9,460,000 10,413,000 7,995,000 9,295,000 10,745,000 13,396,000 11,647,000 11,059,000 10,199,000 12,025,000 8,083,000 9,701,000 9,576,000 8,985,000 5,460,000 4,471,000 5,023,000 10,813,000 9,526,000 9,037,000 12,997,000 12,450,000 9,811,000 9,571,000 8,234,000 11,182,000 9,264,000 7,711,000 5,750,000 12,301,000 6,355,000 4,807,000 7,576,000 4,105,818 4,484,906 4,633,564 4,528,870 4,521,558 4,781,243 4,909,553 3,506,187 
        accrued liabilities
      25,121,000 27,735,000 25,208,000 25,373,000 26,567,000 29,930,000 24,994,000 29,979,000 26,180,000 23,345,000 22,881,000 24,692,000 25,650,000 28,208,000 26,625,000 28,255,000 29,775,000 42,593,000 37,622,000 42,975,000 44,360,000 38,072,000 35,255,000 37,865,000 31,389,000 36,327,000 29,186,000 24,950,000 24,367,000 27,362,000 22,507,000 25,619,000 21,920,000 24,572,000 24,325,000 21,737,000 18,845,000 22,574,000 21,230,000 19,226,000 19,771,000 26,127,000 23,434,000 20,382,000 18,533,000 18,786,000 16,443,000 18,260,000 18,216,000 16,242,000 15,674,000 16,753,000 18,076,000 16,633,000 17,174,000 15,113,000 15,208,000 13,292,000 10,860,000 9,504,000 8,173,000 8,368,000 7,915,000 10,651,000 14,032,000 13,290,000 13,163,000 13,914,000 17,989,000 13,729,000 10,173,000 7,736,000 10,379,000 8,407,000 8,032,000 6,070,000 5,569,000 6,416,000 7,821,000 5,899,000 5,114,052 4,041,602 3,599,233 3,051,515 3,246,998 3,202,231 2,811,730 2,965,459 
        income taxes payable
      7,937,000 6,736,000 6,881,000 3,227,000 5,907,000 5,699,000 12,083,000 10,056,000 7,282,000 6,767,000 6,421,000 6,539,000 5,760,000 4,499,000  1,166,000 567,000 3,442,000 211,000 1,258,000 3,826,000 5,182,000 1,081,000 2,386,000 3,747,000 5,081,000 908,000 1,672,000 2,104,000 4,676,000    618,000  452,000 576,000   403,000   418,000 33,000 31,000 324,000 1,088,000 2,379,000 4,886,000 1,611,000 2,448,000 746,000 2,682,000 391,000 266,000 93,000 1,138,000    229,000    1,988,000 1,470,000 769,000 1,201,000 2,266,000 1,209,000 944,000 955,000 2,151,000 2,140,000 2,224,000 1,520,000 1,406,000 995,000 417,000 708,000 6,219 103,850 748,273 503,268 115,706 106,954 46,983 7,003 
        current portion of unearned service revenues
      41,763,000 41,590,000 41,495,000 40,014,000 41,012,000 40,555,000 34,493,000 35,767,000 36,792,000 36,407,000 36,440,000 36,372,000 40,286,000 40,838,000 38,555,000 40,098,000 37,842,000 39,149,000 37,523,000 36,480,000 38,561,000 39,211,000 35,273,000 35,082,000 34,189,000 32,878,000 30,517,000 30,179,000 30,976,000 29,674,000 29,080,000 29,358,000 28,865,000 27,422,000 27,212,000 26,940,000 26,471,000 26,114,000 23,771,000 23,882,000 23,040,000 23,572,000 22,464,000 23,215,000 22,404,000 19,526,000 19,431,000 19,235,000 19,460,000 17,163,000 16,751,000 16,475,000 15,638,000 15,010,000 14,924,000 14,437,000 13,357,000 12,627,000 11,888,000 12,158,000 12,226,000 11,551,000 11,675,000 11,313,000 11,501,000 10,846,000 10,331,000 9,523,000 8,594,000 6,945,000 6,185,000 5,427,000 4,569,000 3,969,000 3,502,000 3,413,000 3,168,000 2,230,000 2,397,000 2,727,000 1,876,754 2,319,660 922,056 1,475,468 1,811,703 1,930,736 1,013,145 1,324,715 
        customer deposits
      4,633,000 4,989,000 4,282,000 5,208,000 5,031,000 4,251,000 5,237,000 5,584,000 6,389,000 6,725,000 5,873,000 6,975,000 5,876,000 5,399,000 4,709,000 4,496,000 3,650,000 2,807,000 3,912,000 3,451,000 2,115,000 3,108,000 2,419,000 2,701,000 2,847,000 3,144,000 2,538,000 2,944,000 2,456,000 2,604,000 3,065,000 2,883,000 2,799,000 2,872,000 2,763,000 2,085,000 2,368,000 2,998,000 1,517,000 1,431,000 1,556,000 2,046,000 1,223,000 2,559,000 2,289,000 2,324,000 3,047,000 2,692,000 2,662,000 2,347,000 4,339,000 3,933,000 4,072,000 2,490,000 2,017,000 4,522,000 3,679,000 2,652,000 2,486,000 1,621,000 2,173,000 626,000 887,000 375,000 425,000 334,000 308,000 398,000 337,000 252,000 322,000 376,000 618,000 562,000 294,000 280,000 201,000 306,000 389,000 455,000 143,413 238,092 88,703 143,771 279,520 97,942 226,895 813,720 
        lease liabilities
      4,784,000  4,645,000 4,645,000 5,106,000  5,258,000 5,140,000 5,479,000  5,532,000 5,867,000 5,653,000  5,630,000 5,235,000                                                                         
        total current liabilities
      110,584,000 112,860,000 112,949,000 106,334,000 108,937,000 113,273,000 105,473,000 107,767,000 105,010,000 106,239,000 94,693,000 94,080,000 98,018,000 98,881,000 91,934,000 93,365,000 93,399,000 107,947,000 93,453,000 101,135,000 106,205,000 105,965,000 92,348,000 100,705,000 92,969,000 97,523,000 79,550,000 71,509,000 71,048,000 75,885,000 66,616,000 70,511,000 65,537,000 66,610,000 65,807,000 62,062,000 58,431,000 63,031,000 58,991,000 54,244,000 55,563,000 67,182,000 57,400,000 60,063,000 53,644,000 49,866,000 47,410,000 52,054,000 55,682,000 45,376,000 48,545,000 48,709,000 53,948,000 46,196,000 45,487,000 44,431,000 45,498,000 36,677,000 34,978,000 35,409,000 31,866,000 26,032,000 24,989,000 27,420,000 38,846,000 35,481,000 33,640,000 38,088,000 41,654,000 32,000,000 27,272,000 22,834,000 28,989,000 24,452,000 21,891,000 17,167,000 22,808,000 16,406,000 15,932,000 17,465,000 11,295,133 11,235,895 10,032,940 11,234,879 11,496,272 11,628,203 10,482,956 8,641,787 
        loan - 5.50% convertible senior notes
      70,378,000 70,267,000 70,096,000 69,983,000 72,872,000 72,760,000 72,604,000 72,491,000 72,379,000                                                                                
        unearned service revenues - less current portion
      19,962,000 19,886,000 20,051,000 19,984,000 20,142,000 20,256,000 20,893,000 21,017,000 21,101,000 20,947,000 20,868,000 22,323,000 22,486,000 22,350,000 21,242,000 21,885,000 21,476,000 21,757,000 19,354,000 19,582,000 19,985,000 20,578,000 18,171,000 17,355,000 16,319,000 15,505,000 13,940,000 13,291,000 12,531,000 11,815,000 12,665,000 12,832,000 13,390,000 13,813,000 15,600,000 16,005,000 16,676,000 15,025,000 13,176,000 13,570,000 13,201,000 13,799,000 13,635,000 14,153,000 13,608,000 11,701,000 11,344,000 11,312,000 11,221,000 9,648,000 9,232,000 9,575,000 9,540,000 8,785,000 8,254,000 7,569,000  6,286,000 5,932,000 5,784,000 5,910,000 5,591,000 5,882,000   6,597,000 7,086,000 6,865,000   4,465,000   2,713,000 2,247,000 1,193,000 803,000 1,557,000 1,168,000 774,000 1,149,757 633,061 1,607,303      
        lease liabilities - less current portion
      16,902,000  15,412,000 9,556,000 9,690,000  11,495,000 12,463,000 13,287,000  14,344,000 16,053,000 17,288,000  19,724,000 19,962,000                                                                         
        deferred income tax liabilities
      15,478,000 14,809,000 13,048,000 12,498,000 12,543,000 13,308,000 11,497,000 11,928,000 11,897,000 11,708,000 5,708,000 1,010,000 1,041,000 1,058,000 595,000 674,000 642,000 787,000 734,000 285,000 173,000 357,000 2,466,000 2,614,000 2,541,000 736,000 613,000 590,000 700,000 695,000 1,683,000 1,570,000 1,445,000 1,409,000 1,163,000 872,000                                                     
        income taxes payable - less current portion
      1,530,000 1,485,000 2,510,000 6,114,000 6,123,000 5,629,000 4,020,000 5,292,000 8,718,000 8,706,000 10,131,000 10,131,000 11,297,000 11,297,000 9,250,000 9,250,000 11,583,000 11,583,000 12,058,000 12,058,000 13,177,000 13,177,000 12,567,000 11,821,000 12,247,000 12,247,000 14,579,000 14,578,000 15,952,000 15,952,000                                                           
        other long-term liabilities
      28,000 32,000 46,000 16,000 17,000 23,000 30,000 39,000 23,000 49,000 19,000 956,000 1,034,000 1,047,000 1,071,000 1,083,000 1,110,000 1,084,000 1,016,000 35,000 974,000 1,075,000 1,031,000 3,137,000 3,326,000 3,624,000 3,772,000 1,798,000 2,092,000 2,165,000 2,191,000 2,664,000 2,622,000 2,225,000 2,430,000 2,813,000 2,916,000 2,800,000 2,858,000 2,961,000 2,423,000 628,000 481,000                                        33,726 35,645 583,840 182,928 508,422 269,289 
        total liabilities
      234,862,000 233,395,000 234,112,000 224,485,000 230,324,000 236,086,000 226,012,000 230,997,000 232,415,000 162,298,000 145,763,000 144,553,000 151,164,000 153,281,000 143,816,000 146,219,000 149,175,000 165,289,000 138,396,000 144,746,000 153,259,000 154,850,000 140,505,000 149,115,000 141,765,000 129,635,000 112,454,000 101,766,000 102,323,000 106,512,000 83,155,000 87,577,000 82,994,000 84,057,000 85,000,000 81,752,000 78,910,000 81,542,000 76,967,000 72,818,000 73,212,000 81,609,000 72,721,000 75,455,000 68,493,000 62,755,000 59,922,000 64,501,000 68,071,000 56,349,000 59,121,000 59,835,000 64,893,000 56,297,000 55,083,000 53,328,000 53,542,000 46,131,000 42,121,000 42,457,000 39,112,000 33,060,000 32,251,000 34,825,000 47,006,000 43,394,000 42,012,000 46,237,000 49,040,000 38,333,000 33,044,000 27,798,000 33,221,000 28,528,000 25,537,000 19,783,000 23,788,000 18,217,000 17,365,000 18,591,000 12,538,397 11,947,115 11,673,969 12,266,893 12,080,112 11,811,131 10,991,378 8,911,076 
        commitments and contingencies - see note 13
                                                                                              
        shareholders’ equity:
                                                                                              
        common stock - par value 0.001, 50,000,000 shares authorized; 21,187,604 and 20,916,723 issued, respectively; 19,225,837 and 18,954,956 outstanding, respectively
      20,000                                                                                        
        additional paid-in capital
      361,891,000 358,133,000 354,765,000 351,849,000 350,816,000 346,277,000 340,414,000 336,534,000 331,875,000 328,227,000 325,244,000 306,119,000 302,877,000 301,061,000 298,082,000 294,490,000 291,603,000 287,979,000 276,779,000 273,325,000 270,940,000 267,868,000 260,737,000 255,706,000 252,840,000 251,329,000 249,284,000 233,755,000 231,209,000 223,055,000 218,242,000 216,511,000 214,715,000 212,602,000 211,227,000 209,650,000 208,995,000 206,996,000 206,459,000 205,019,000 203,599,000 200,090,000 198,202,000 196,032,000 194,797,000 188,413,000 187,098,000  181,094,000  178,361,000 176,897,000 169,780,000 167,491,000 165,564,000 159,719,000 156,310,000 154,585,000                           49,482,614 49,462,548 49,445,131 49,430,637 
        retained earnings
      -17,949,000  -17,869,000 -17,580,000 -17,056,000  -11,377,000 -2,621,000 25,624,000 46,788,000 49,022,000 55,283,000 63,857,000 73,544,000 105,256,000 109,111,000 110,287,000 113,508,000 86,100,000 89,124,000 98,056,000 112,879,000 162,574,000 168,773,000 175,178,000 175,353,000 170,161,000 172,649,000 171,444,000 168,624,000 179,682,000 178,053,000 181,679,000 183,436,000 179,891,000 178,801,000 175,409,000 172,329,000 163,444,000 164,328,000 160,180,000 159,516,000 148,394,000 137,171,000 130,845,000 117,607,000 112,563,000 108,933,000 104,358,000 96,519,000 92,844,000 88,110,000 81,360,000 71,889,000 65,459,000 61,227,000 57,983,000 53,144,000 50,816,000 48,980,000 46,915,000 47,537,000 48,809,000 50,913,000 57,497,000 55,299,000 53,289,000 46,924,000 43,545,000 35,142,000 34,437,000 28,651,000 25,452,000 21,795,000 18,606,000 17,752,000 17,256,000 17,073,000 14,458,000 12,546,000 4,162,481 1,097,071       
        accumulated other comprehensive loss
      -43,126,000 -49,019,000 -40,729,000 -47,038,000 -41,145,000 -37,247,000 -39,310,000 -31,992,000 -30,551,000 -33,331,000 -44,165,000 -32,369,000 -19,358,000 -17,374,000 -15,795,000 -15,467,000 -20,334,000 -10,160,000 -18,526,000 -22,865,000 -21,177,000 -17,399,000 -24,430,000 -18,784,000 -20,047,000 -18,483,000 -16,896,000 -11,985,000 -2,608,000 -7,822,000 -9,387,000 -13,262,000 -20,402,000 -24,561,000 -13,696,000 -15,035,000 -13,240,000 -19,861,000 -14,757,000 -11,282,000 -13,473,000                                   -1,724,000             
        common stock in treasury, at cost - 1,961,767 and 1,961,767 shares held, respectively
      -40,669,000                                                                                        
        total shareholders’ equity
      260,167,000 249,610,000 255,518,000 256,596,000 261,980,000 268,606,000 259,092,000 271,286,000 296,313,000 311,049,000 299,464,000 298,396,000 316,739,000 326,459,000 356,771,000 357,362,000 350,783,000 360,303,000 313,330,000 308,561,000 316,790,000 331,992,000 367,525,000 374,339,000 376,588,000 376,609,000 370,959,000 362,703,000 368,329,000 352,066,000 356,726,000 349,491,000 344,182,000 339,657,000 345,602,000 341,596,000 339,344,000 327,644,000 346,089,000 349,008,000 341,249,000 343,854,000 337,006,000 331,430,000 323,770,000 303,899,000 293,984,000 288,757,000 282,736,000 272,866,000 266,274,000 263,098,000 247,898,000 238,328,000 234,549,000 221,701,000 212,477,000 206,016,000 197,619,000 196,333,000 196,598,000 197,082,000 195,282,000 194,941,000 212,308,000 209,393,000 209,893,000 203,283,000 194,499,000 186,281,000 126,985,000  111,055,000          39,473,249 34,794,718 34,591,049 33,383,649 31,446,528  
        total liabilities and shareholders’ equity
      495,029,000 483,005,000 489,630,000 481,081,000 492,304,000 504,692,000 485,104,000 502,283,000 528,728,000 473,347,000 445,227,000 442,949,000 467,903,000 479,740,000 500,587,000 503,581,000 499,958,000 525,592,000 451,726,000 453,307,000 470,049,000 486,842,000 508,030,000 523,454,000 518,353,000 506,244,000 483,413,000 464,469,000 470,652,000 458,578,000 439,881,000 437,068,000 427,176,000 423,714,000 430,602,000 423,348,000 418,254,000 409,186,000 423,056,000 421,826,000 414,461,000 425,463,000 409,727,000 406,885,000 392,263,000 366,654,000 353,906,000 353,258,000 350,807,000 329,215,000 325,395,000 322,933,000 312,791,000 294,625,000 289,632,000 275,029,000 266,019,000 252,147,000 239,740,000 238,790,000 235,710,000 230,142,000 227,533,000 229,766,000 259,314,000 252,787,000 251,905,000 249,520,000 243,539,000 224,614,000 160,029,000  144,276,000           47,061,611 46,671,161 45,194,780 42,437,906 40,237,574 
        operating lease right-of-use asset
       15,880,000    12,231,000    18,989,000    22,543,000   24,616,000 26,107,000 15,060,000 14,684,000 16,534,000 18,418,000 18,672,000 18,068,000 18,876,000                                                                
        lease liability
       4,474,000    5,434,000    5,709,000    5,738,000   5,596,000 5,835,000 5,089,000 4,904,000 5,947,000 6,674,000 6,615,000 6,494,000 6,446,000                                                                
        lease liability - less current portion
       14,056,000    10,837,000    14,649,000    18,648,000   20,965,000 22,131,000 11,781,000 11,651,000 12,745,000 13,698,000 13,922,000 13,483,000 14,363,000                                                                
        commitments and contingencies - see note 12
                                                                                              
        common stock - par value 0.001, 50,000,000 shares authorized; 20,916,723 and 20,343,359 issued; 18,954,956 and 18,968,798 outstanding, respectively
       20,000                                                                                       
        accumulated deficit
       -18,855,000                                                                                 -8,750,366 -12,084,256 -13,642,305 -14,131,669 -15,703,002 -15,774,997 
        common stock in treasury, at cost - 1,961,767 and 1,376,220 shares held, respectively
       -40,669,000                                                                                       
        common stock - par value 0.001, 50,000,000 shares authorized; 20,869,974 and 20,343,359 issued, respectively; 18,908,076 and 18,968,798 outstanding, respectively
        20,000                                                                                      
        common stock in treasury, at cost - 1,961,898 and 1,374,561 shares held, respectively
        -40,669,000                                                                                      
        common stock - par value 0.001, 50,000,000 shares authorized; 20,779,711 and 20,343,359 issued, respectively; 19,406,669 and 18,968,798 outstanding, respectively
         20,000                                                                                     
        common stock in treasury, at cost - 1,373,042 and 1,374,561 shares held, respectively
         -30,655,000 -30,655,000                                                                                    
        common stock - par value 0.001, 50,000,000 shares authorized; 20,578,403 and 20,343,359 issued, respectively; 19,205,361 and 18,968,798 outstanding, respectively
          20,000                                                                                    
        common stock - par value 0.001, 50,000,000 shares authorized; 20,343,359 and 20,156,233 issued; 18,968,798 and 18,780,013 outstanding, respectively
           20,000                                                                                   
        (accumulated deficit) retained earnings
           -9,789,000                                                                                   
        common stock in treasury, at cost - 1,376,220 and 1,376,220 shares held, respectively
           -30,655,000                                                                                   
        common stock - par value 0.001, 50,000,000 shares authorized; 20,328,417 and 20,156,233 issued, respectively; 18,953,725 and 18,780,013 outstanding, respectively
            20,000                                                                                  
        common stock in treasury, at cost - 1,374,692 and 1,376,220 shares held, respectively
            -30,655,000 -30,655,000 -30,655,000                                                                                
        common stock - par value 0.001, 50,000,000 shares authorized; 20,321,490 and 20,156,233 issued, respectively; 18,946,798 and 18,780,013 outstanding, respectively
             20,000                                                                                 
        common stock - par value 0.001, 50,000,000 shares authorized; 20,276,813 and 20,156,233 issued, respectively; 18,902,121 and 18,780,013 outstanding, respectively
              20,000                                                                                
        preferred stock - par value 0.01, 10,000,000 shares authorized; none issued
                                                                                              
        common stock - par value 0.001, 50,000,000 shares authorized; 20,156,233 and 19,588,003 issued; 18,780,013 and 18,205,636 outstanding, respectively
               20,000                                                                               
        common stock in treasury, at cost - 1,376,220 and 1,382,367 shares held, respectively
               -30,655,000                                                                               
        common stock - par value 0.001, 50,000,000 shares authorized; 20,153,287 and 19,588,003 issued, respectively; 18,776,936 and 18,205,636 outstanding, respectively
                20,000                                                                              
        common stock in treasury, at cost - 1,376,351 and 1,382,367 shares held, respectively
                -30,657,000 -30,657,000 -30,657,000                                                                            
        common stock - par value 0.001, 50,000,000 shares authorized; 19,651,715 and 19,588,003 issued, respectively; 18,275,364 and 18,205,636 outstanding, respectively
                 20,000                                                                             
        common stock - par value 0.001, 50,000,000 shares authorized; 19,637,028 and 19,588,003 issued, respectively; 18,260,677 and 18,205,636 outstanding, respectively
                  20,000                                                                            
        common stock - par value 0.001, 50,000,000 shares authorized; 19,588,003 and 19,384,350 issued; 18,205,636 and 17,990,707 outstanding, respectively
                   20,000                                                                           
        common stock in treasury, at cost - 1,382,367 and 1,393,643 shares held, respectively
                   -30,792,000                                                                           
        common stock - par value 0.001, 50,000,000 shares authorized; 19,584,783 and 19,384,350 issued, respectively; 18,202,416 and 17,990,707 outstanding, respectively
                    20,000                                                                          
        common stock in treasury, at cost; 1,382,367 and 1,393,643 shares, respectively
                    -30,792,000 -30,792,000 -30,792,000                                                                        
        common stock - par value 0.001, 50,000,000 shares authorized; 19,557,240 and 19,384,350 issued, respectively; 18,174,873 and 17,990,707 outstanding, respectively
                     20,000                                                                         
        common stock - par value 0.001, 50,000,000 shares authorized; 19,536,531 and 19,384,350 issued, respectively; 18,154,164 and 17,990,707 outstanding, respectively
                      19,000                                                                        
        common stock - par value 0.001, 50,000,000 shares authorized; 19,384,350, 18,988,379 issued; 17,990,707 and 17,576,618 outstanding, respectively
                       19,000                                                                       
        common stock in treasury, at cost - 1,393,643 shares and 1,411,761, respectively
                       -31,043,000                                                                       
        common stock - par value 0.001, 50,000,000 shares authorized; 19,231,375 and 18,988,379 issued, respectively; 17,832,934 and 17,576,618 outstanding, respectively
                        19,000                                                                      
        common stock in treasury, at cost; 1,398,441 and 1,411,761 shares, respectively
                        -31,042,000 -31,042,000                                                                     
        common stock - par value 0.001, 50,000,000 shares authorized; 19,168,021 and 18,988,379 issued, respectively; 17,769,580 and 17,576,618 outstanding, respectively
                         19,000                                                                     
        plant and equipment
                          24,515,000 26,954,000                                                                   
        commitments and contingencies - see note 14
                                                                                              
        common stock - par value 0.001, 50,000,000 shares authorized; 19,116,870 and 18,988,379 issued, respectively; 17,718,179 and 17,576,618 outstanding, respectively
                          19,000                                                                    
        common stock in treasury, at cost; 1,398,691 and 1,411,761 shares, respectively
                          -31,048,000                                                                    
        common stock - par value 0.001, 50,000,000 shares authorized; 18,988,379, 18,676,059 issued; 17,576,618 and 17,253,011 outstanding, respectively
                           19,000                                                                   
        common stock in treasury, at cost - 1,411,761 shares and 1,423,048, respectively
                           -31,375,000                                                                   
        property and equipment:
                                                                                              
        machinery and equipment
                            82,578,000 82,909,000 80,586,000 76,048,000 73,748,000 70,332,000 69,355,000 66,514,000 66,049,000 62,937,000 58,566,000 57,063,000 57,197,000 55,702,000 55,982,000 54,124,000 50,493,000 45,997,000 46,067,000 45,254,000 41,115,000 39,587,000 38,079,000 34,519,000 33,296,000 32,196,000 32,236,000 31,427,000 30,587,000 30,248,000 29,171,000 28,217,000 27,713,000 26,267,000 24,840,000 23,930,000 21,916,000 21,628,000 19,867,000 19,557,000 19,043,000 18,435,000 22,685,000 18,145,000 16,444,000 13,696,000 12,895,000 12,008,000 11,540,000 9,647,000 9,131,000 8,684,000 8,321,000 7,390,000 6,940,000 6,630,000 5,878,000 5,239,000 3,885,004 3,379,003  5,225,924 5,686,181 5,338,681 5,299,998 4,931,466 
        furniture and fixtures
                            6,172,000 6,245,000 6,141,000 6,749,000 6,817,000 6,650,000 6,853,000 6,945,000 6,863,000 7,156,000 6,868,000 6,099,000 6,291,000 6,164,000 6,188,000 5,945,000 5,921,000 5,946,000 5,984,000 6,156,000 6,928,000 7,159,000 7,072,000 6,748,000 6,443,000 6,366,000 6,516,000 6,406,000 6,197,000 6,066,000 5,963,000 6,005,000 6,213,000 6,121,000 5,700,000 5,308,000 5,013,000 5,095,000 5,225,000 5,250,000 5,142,000 4,833,000 4,099,000 3,909,000 3,953,000 5,398,000 5,008,000 4,625,000 4,347,000 4,225,000 3,988,000 3,696,000 3,670,000 3,461,000 3,334,000 2,881,000 2,589,000 2,555,000 2,161,988 2,098,037  2,185,930 1,436,908 1,342,207 1,334,940 1,331,136 
        leasehold improvements
                            21,066,000 20,636,000 20,311,000 20,304,000 20,049,000 20,039,000 20,230,000 19,872,000 19,588,000 19,400,000 19,099,000 18,778,000 18,942,000 19,271,000 19,182,000 18,471,000 19,537,000 19,537,000 19,658,000 19,676,000 15,482,000 12,709,000 12,307,000 11,211,000 10,884,000 10,812,000 10,897,000 10,780,000 10,728,000 10,343,000 10,233,000 10,151,000 10,412,000 9,977,000 9,682,000 9,430,000 9,366,000 9,423,000 9,434,000 9,399,000 9,217,000 8,560,000 3,956,000 3,523,000 3,604,000 3,567,000 3,296,000 3,066,000 2,770,000 2,684,000 2,615,000 2,436,000 2,299,000 2,033,000 1,710,000 1,635,000 1,049,000 1,014,000 763,164 736,994  411,484 376,131 332,082 295,619 292,979 
        property and equipment at cost
                            109,816,000 109,790,000 107,038,000 103,101,000 100,614,000 97,021,000 96,438,000 93,331,000    81,940,000    78,540,000 75,951,000 71,480,000 71,709,000 71,086,000 63,525,000 59,455,000 57,458,000 52,478,000 50,623,000 49,374,000 49,649,000 48,613,000 47,512,000 46,657,000 45,367,000 44,373,000 44,338,000 42,365,000 40,222,000 38,668,000 36,295,000 36,146,000 34,526,000 34,206,000 33,402,000 31,828,000 30,740,000 25,577,000 24,001,000 22,661,000 21,199,000 19,699,000 18,657,000 16,556,000 15,734,000 14,816,000 14,290,000 12,884,000 11,984,000 11,146,000 9,516,000 8,808,000 6,810,156        
        less: accumulated depreciation and amortization
                            -81,411,000 -79,664,000 -76,188,000 -72,684,000 -69,919,000 -66,321,000 -64,907,000 -61,452,000 -60,189,000 -57,138,000 -53,108,000 -50,262,000 -49,671,000 -47,745,000 -45,714,000 -42,594,000 -42,215,000 -40,241,000 -41,608,000 -41,741,000 -41,756,000 -41,571,000 -40,516,000 -38,143,000 -36,326,000 -34,913,000 -34,305,000 -32,776,000 -31,373,000 -30,677,000 -29,134,000 -28,298,000 -28,034,000 -26,631,000 -24,982,000 -24,086,000 -22,040,000 -21,499,000 -20,788,000 -19,800,000 -18,509,000 -17,220,000 -16,604,000 -16,068,000 -15,853,000 -15,036,000 -13,672,000 -12,651,000 -11,790,000 -9,786,000 -8,889,000 -8,056,000 -7,461,000 -6,646,000 -5,920,000 -5,297,000 -4,400,000 -4,005,000 -3,143,904 -2,798,367       
        property and equipment
                            28,405,000 30,126,000 30,850,000 30,417,000 30,695,000 30,700,000 31,531,000 31,879,000 32,311,000 32,355,000 31,425,000 31,678,000 32,759,000 33,392,000 35,638,000 35,946,000 33,736,000 31,239,000 30,101,000 29,345,000 21,769,000 17,884,000 16,942,000 14,335,000 14,297,000 14,461,000 15,344,000 15,837,000 16,139,000 15,980,000 16,233,000 16,075,000 16,304,000 15,734,000 15,240,000 14,582,000 14,255,000 14,647,000 13,738,000 14,406,000 14,893,000 14,608,000 14,136,000 9,509,000 8,148,000 7,625,000 7,527,000 7,048,000 6,867,000 6,770,000 6,845,000 6,760,000 6,829,000 6,238,000 6,064,000 5,849,000 5,116,000 4,803,000 3,666,252   2,227,772 2,192,822 2,017,859 2,158,417 1,992,787 
        commitments and contingencies - see note 15
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 18,816,598 and 18,676,059 issued, respectively; 17,404,087 and 17,253,011 outstanding, respectively
                            19,000                                                                  
        common stock in treasury, at cost; 1,412,511 and 1,423,048 shares, respectively
                            -31,375,000 -31,375,000                                                                 
        commitments and contingencies - see note 16
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 18,751,573 and 18,676,059 issued, respectively; 17,339,062 and 17,253,011 outstanding, respectively
                             19,000                                                                 
        common stock - par value .001, 50,000,000 shares authorized; 18,731,586 and 18,676,059 issued, respectively; 17,317,875 and 17,253,011 outstanding, respectively
                              19,000                                                                
        common stock in treasury, at cost; 1,413,711 and 1,423,048 shares, respectively
                              -31,402,000                                                                
        common stock - par value .001, 50,000,000 shares authorized; 18,676,059 and 18,277,142 issued; 17,253,011 and 16,796,884 outstanding, respectively
                               19,000                                                               
        common stock in treasury, at cost - 1,423,048 shares and 1,480,258, respectively
                               -31,609,000                                                               
        common stock - par value .001, 50,000,000 shares authorized; 18,675,208 and 18,277,142 issued, respectively; 17,252,160 and 16,796,884 outstanding, respectively
                                19,000                                                              
        common stock in treasury, at cost; 1,423,048 and 1,480,258 shares, respectively
                                -31,609,000                                                              
        common stock - par value .001, 50,000,000 shares authorized; 18,440,073 and 18,277,142 issued, respectively; 16,978,758 and 16,796,884 outstanding, respectively
                                 18,000                                                             
        common stock in treasury, at cost; 1,461,315 and 1,480,258 shares, respectively
                                 -31,734,000                                                             
        common stock - par value .001, 50,000,000 shares authorized; 18,416,020 and 18,277,142 issued, respectively; 16,955,679 and 16,796,884 outstanding, respectively
                                  18,000                                                            
        common stock in treasury, at cost; 1,460,341 and 1,480,258 shares, respectively
                                  -31,734,000                                                            
        common stock - par value .001, 50,000,000 shares authorized; 18,277,142 and 18,170,267 issued; 16,796,884 and 16,680,791 outstanding, respectively
                                   18,000                                                           
        common stock in treasury, at cost - 1,480,258 shares and 1,489,476, respectively
                                   -31,809,000                                                           
        property and equipment, at cost
                                    92,500,000 89,493,000 84,533,000  82,430,000 81,137,000 81,352,000                                                    
        common stock - par value .001, 50,000,000 shares authorized; 18,197,628 and 18,170,267 issued, respectively; 16,711,152 and 16,680,791 outstanding, respectively
                                    18,000                                                          
        common stock in treasury, at cost; 1,486,476 and 1,489,476 shares, respectively
                                    -31,829,000 -31,829,000 -31,828,000                                                        
        common stock - par value .001, 50,000,000 shares authorized; 18,194,509 and 18,170,267 issued, respectively; 16,708,033 and 16,680,791 outstanding, respectively
                                     18,000                                                         
        common stock - par value .001, 50,000,000 shares authorized; 18,178,495 and 18,170,267 issued; 16,692,019 and 16,680,791 outstanding, respectively
                                      18,000                                                        
        common stock - par value .001, 50,000,000 shares authorized; 18,170,267 and 18,077,594 issued; 16,680,791 and 16,588,118 outstanding, respectively
                                       18,000                                                       
        common stock in treasury, at cost - 1,489,476 shares
                                       -31,838,000 -31,838,000 -31,838,000 -31,838,000                                                    
        other long term assets
                                        971,000 947,000 955,000                                                    
        common stock - par value .001, 50,000,000 shares authorized; 18,163,850 and 18,077,594 issued; 16,674,374 and 16,588,118 outstanding, respectively
                                        18,000                                                      
        common stock - par value .001, 50,000,000 shares authorized; 18,163,600 and 18,077,594 issued; 16,674,124 and 16,588,118 outstanding, respectively
                                         18,000                                                     
        deferred income taxes
                                          7,754,000 7,792,000 5,508,000 5,510,000 5,860,000 5,936,000 5,883,000 5,930,000 5,082,000 6,207,000 5,925,000 6,025,000 7,216,000 6,090,000 6,190,000 5,295,000 5,297,000 4,349,000 4,471,000 4,161,000 4,455,000 5,520,000 4,242,000 4,482,000 4,473,000 4,541,000 6,278,000 6,426,000 5,581,000 6,034,000 5,812,000 4,013,000 2,841,000 2,695,000 2,070,000 1,788,000 1,845,000 2,765,000 2,879,000 2,561,000 2,155,000 2,772,000 2,017,000        91,959 76,418 
        deferred income tax liability
                                          887,000 686,000 1,942,000 2,043,000 2,025,000  1,203,000 1,235,000 1,233,000                                            
        common stock - par value .001, 50,000,000 shares authorized; 18,141,098 and 18,077,594 issued; 16,651,622 and 16,588,118 outstanding, respectively
                                          18,000                                                    
        common stock - par value .001, 50,000,000 shares authorized; 18,077,594 and 17,997,665 issued; 16,588,118 and 17,317,430 outstanding, respectively
                                           18,000                                                   
        common stock in treasury, at cost - 1,489,476 and 680,235 shares, respectively
                                           -31,838,000                                                   
        service and demonstration inventory
                                            32,666,000                                                  
        common stock - par value .001, 50,000,000 shares authorized; 18,077,594 and 17,997,665 issued; 17,397,359 and 17,317,430 outstanding, respectively
                                            18,000                                                  
        common stock in treasury, at cost - 680,235 shares
                                            -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000 -9,075,000  -9,075,000 -9,075,000 -9,075,000                             
        service inventory
                                             22,014,000 21,494,000 20,646,000 21,589,000 21,906,000 20,345,000 18,137,000 17,784,000 18,316,000 19,125,000 19,535,000 18,160,000 18,477,000 17,316,000 15,683,000 14,255,000 13,795,000 13,726,000 13,369,000 12,192,000 12,748,000 12,079,000 12,751,000 12,551,000 12,683,000 12,843,000 12,682,000 12,491,000 12,001,000 10,865,000 10,448,000 9,558,000 7,906,000 7,278,000 5,709,000 4,966,000 4,371,000 4,333,000 3,826,000 3,301,000 3,778,000         
        common stock - par value .001, 50,000,000 shares authorized; 18,073,588 and 17,997,665 issued; 17,393,353 and 17,317,430 outstanding, respectively
                                             18,000                                                 
        common stock - par value .001, 50,000,000 shares authorized; 18,057,768 and 17,997,665 issued; 17,377,533 and 17,317,430 outstanding, respectively
                                              18,000                                                
        common stock - par value .001, 50,000,000 shares authorized; 17,997,665 and 17,868,372 issued; 17,317,430 and 17,188,137 outstanding, respectively
                                               18,000                                               
        accumulated other comprehensive income
                                               -6,695,000 -533,000 7,284,000 7,185,000 6,936,000 3,380,000 2,912,000 6,341,000 5,429,000 4,126,000 7,148,000 5,816,000 8,006,000 12,584,000 9,813,000 7,242,000 7,345,000 1,900,000 3,187,000 6,361,000 7,116,000 4,869,000 3,089,000 5,742,000 5,446,000 9,066,000 9,459,000 4,599,000 3,327,000 895,000 969,000 580,000  31,000  -2,199,000 -1,967,000 -2,721,000 34,000         
        current portion of obligations under capital leases
                                                8,000 8,000 6,000 4,000 15,000 28,000 45,000 18,000 38,000 57,000 84,000 25,000 47,000 67,000 91,000 23,000 43,000 60,000 80,000 27,000 41,000 58,000 87,000 15,000 32,000 55,000 18,000           100,000         
        obligations under capital leases - less current portion
                                                2,000 4,000 8,000 17,000 16,000 17,000 19,000 66,000 65,000 392,000 257,000 156,000 150,000 144,000  215,000 203,000 189,000 193,000 285,000 266,000   159,000 129,000 126,000            352,000         
        commitments and contingencies - see note p
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 17,954,933 and 17,868,372 issued; 17,274,698 and 17,188,137 outstanding, respectively
                                                18,000                                              
        commitments and contingencies - see note q
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 17,927,617 and 17,868,372 issued; 17,247,382 and 17,188,137 outstanding, respectively
                                                 18,000                                             
        common stock - par value .001, 50,000,000 shares authorized; 17,913,793 and 17,868,372 issued; 17,233,558 and 17,188,137 outstanding, respectively
                                                  18,000                                            
        deferred tax liability
                                                   1,171,000 1,152,000 1,118,000 1,149,000 1,259,000 1,279,000 1,159,000 1,148,000 1,160,000 1,192,000 1,184,000  2,953,000 1,008,000 1,075,000 1,143,000 1,152,000 1,114,000 1,071,000 1,107,000 1,157,000 1,157,000 1,158,000 1,073,000 1,044,000 1,229,000 1,216,000 1,200,000 1,200,000 1,200,000 1,200,000     14,550        
        common stock - par value .001, 50,000,000 shares authorized; 17,795,117 and 17,653,879 issued; 17,114,882 and 16,973,644 outstanding, respectively
                                                   18,000                                           
        common stock - par value .001, 50,000,000 shares authorized; 17,788,200 and 17,653,879 issued; 17,107,965 and 16,973,644 outstanding, respectively
                                                    18,000                                          
        common stock - par value .001, 50,000,000 shares authorized; 17,771,559 and 17,653,879 issued; 17,091,324 and 16,973,644 outstanding, respectively
                                                     18,000                                         
        additional paid-in-capital
                                                     185,969,000  179,975,000         153,961,000 153,224,000 152,380,000 151,487,000 150,662,000 149,997,000 149,298,000 148,782,000 147,672,000 147,034,000 146,489,000 147,946,000 91,789,000 88,139,000 85,160,000 84,439,000 84,437,000 84,229,000 83,792,000 82,641,000 82,938,000 82,519,000 78,319,475 79,731,350 49,304,031 49,800,244     
        common stock - par value .001, 50,000,000 shares authorized; 17,653,879 and 17,381,110 issued; 16,973,644 and 16,700,875 outstanding, respectively
                                                      18,000                                        
        common stock - par value .001, 50,000,000 shares authorized; 17,651,780 and 17,381,110 issued; 16,971,545 and 16,700,875 outstanding, respectively
                                                       18,000                                       
        common stock - par value .001, 50,000,000 shares authorized; 17,626,558 and 17,381,110 issued; 16,946,323 and 16,700,875 outstanding, respectively
                                                        18,000                                      
        common stock - par value .001, 50,000,000 shares authorized; 17,601,556 and 17,381,110 issued; 16,921,321 and 16,700,875 outstanding, respectively
                                                         18,000                                     
        common stock - par value .001, 50,000,000 shares authorized; 17,381,110 and 16,894,374 issued; 16,700,875 and 16,214,139 outstanding, respectively
                                                          17,000                                    
        commitments and contingencies - see note r
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 17,306,911 and 16,894,374 issued; 16,626,676 and 16,214,139 outstanding, respectively
                                                           17,000                                   
        common stock - par value .001, 50,000,000 shares authorized; 17,256,199 and 16,894,374 issued; 16,575,964 and 16,214,139 outstanding, respectively
                                                            17,000                                  
        common stock - par value .001, 50,000,000 shares authorized; 17,018,943 and 16,894,374 issued; 16,338,708 and 16,214,139 outstanding, respectively
                                                             17,000                                 
        unearned service revenues—less current portion
                                                              6,758,000       6,078,000 6,772,000    6,091,000 5,123,000  3,642,000 2,917,000           996,369     
        obligations under capital leases—less current portion
                                                              125,000       256,000 281,000    222,000                    
        commitments and contingencies—see note 13
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 16,894,374 and 16,795,289 issued; 16,214,139 and 16,115,054 outstanding, respectively
                                                              17,000                                
        common stock in treasury, at cost—680,235 shares
                                                              -9,075,000                                
        common stock - par value .001, 50,000,000 shares authorized; 16,842,093 and 16,795,289 issued; 16,161,858 and 16,115,054 outstanding, respectively
                                                               17,000                               
        shareholders' equity:
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 16,839,592 and 16,795,289 issued; 16,159,357 and 16,115,054 outstanding, respectively
                                                                17,000                              
        notes payable
                                                                 2,490,000                             
        common stock - par value .001, 50,000,000 shares authorized; 16,815,066 and 16,795,289 issued; 16,134,831 and 16,115,054 outstanding, respectively
                                                                 17,000                             
        common stock - par value .001, 50,000,000 shares authorized; 16,795,289 and 16,741,488 issued; 16,115,054 and 16,658,552 outstanding, respectively
                                                                  17,000                            
        common stock in treasury, at cost - 680,235 and 55,808 shares, respectively
                                                                  -9,075,000 -9,075,000                           
        common stock - par value .001, 50,000,000 shares authorized; 16,793,289 and 16,741,488 issued; 16,102,331 and 16,658,552 outstanding, respectively
                                                                   17,000                           
        common stock - par value .001, 50,000,000 shares authorized; 16,785,058 and 16,741,488 issued; 16,083,730 and 16,658,552 outstanding, respectively
                                                                    17,000                          
        common stock in treasury, at cost - 680,235 and 55,808 shares
                                                                    -9,075,000                          
        commitments and contingencies—see note q
                                                                                              
        common stock—par value .001, 50,000,000 shares authorized; 16,750,269 and 16,741,488 issued; 16,048,926 and 16,658,552 outstanding, respectively
                                                                     17,000                         
        common stock in treasury, at cost—680,235 and 55,808 shares
                                                                     -9,075,000                         
        common stock—par value .001, 50,000,000 shares authorized; 16,741,488 and 16,700,966 issued; 16,658,552 and 16,604,052 outstanding, respectively
                                                                      17,000                        
        common stock in treasury, at cost—55,808 and 40,000 shares respectively
                                                                      -246,000                        
        commitments and contingencies - see note o
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 16,733,554 and 16,700,966 issued; 16,653,859 and 16,604,052 outstanding, respectively
                                                                       17,000                       
        common stock in treasury, at cost - 40,000 shares
                                                                       -151,000 -151,000 -151,000   -151,000   -151,000 -151,000 -151,000 -151,000 -151,000 -151,000 -151,000 -150,625 -150,625 -150,625  -150,625   -150,625 
        common stock - par value .001, 50,000,000 shares authorized; 16,731,054 and 16,700,966 issued; 16,634,140 and 16,604,052 outstanding, respectively
                                                                        17,000                      
        common stock - par value .001, 50,000,000 shares authorized; 16,714,454 and 16,700,966 issued; 16,617,540 and 16,604,052 outstanding, respectively
                                                                         17,000                     
        commitments and contingencies—see note 15
                                                                                              
        common stock—par value .001, 50,000,000 shares authorized; 16,700,966 and 14,586,402 issued; 16,604,052 and 14,464,715 outstanding, respectively
                                                                          17,000                    
        common stock in treasury, at cost—40,000 shares
                                                                          -151,000 -151,000  -151,000 -151,000           -150,625  -150,625   
        current portion of long-term debt and obligations under capital leases
                                                                           54,000 77,000 106,000 90,000 110,000 128,000 134,000 163,000 104,000 101,000          
        long-term debt and obligations under capital leases—less current portion
                                                                           166,000  106,000 115,000                
        commitments and contingencies—see note n
                                                                                              
        common stock—par value .001, 50,000,000 shares authorized; 16,689,853 and 14,586,402 issued; 16,621,893 and 14,464,715 outstanding, respectively
                                                                           17,000                   
        long-term debt and obligations under capital leases - less current portion
                                                                            78,000   163,000 199,000 223,000 177,000 254,000 265,000          
        commitments and contingencies - see note n
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 14,937,123 and 14,586,402 issued; 14,829,163 and 14,464,715 outstanding, respectively
                                                                            15,000                  
        liabilities and shareholders' equity
                                                                                              
        commitments and contingencies—see note o
                                                                                              
        common stock—par value .001, 50,000,000 shares authorized; 14,790,801 and 14,586,402 issued; 14,673,744 and 14,464,715 outstanding, respectively
                                                                             15,000                 
        total shareholders' equity
                                                                             117,623,000  105,530,000 102,937,000 100,120,000 98,860,000 97,831,000 94,858,000 95,344,000 81,947,124 80,066,954      31,326,498 
        total liabilities and shareholders' equity
                                                                             145,421,000  134,058,000 128,474,000 119,903,000 122,648,000 116,048,000 112,223,000 113,935,000 94,485,521        
        commitments and contingencies—see notes 2, 11 and 15
                                                                                              
        common stock—par value .001, 50,000,000 shares authorized; 14,586,402 and 14,481,178 issued; 14,464,715 and 14,290,917 outstanding, respectively
                                                                              14,000                
        less: accumulated amortization
                                                                               -12,896,000       -13,667,478 -13,308,304       
        common stock - par value .001, 50,000,000 shares authorized; 14,516,618 and 14,481,178 issued; 14,368,940 and 14,290,917 outstanding, respectively
                                                                               14,000               
        accumulated other comprehensive
                                                                               -567,000               
        common stock - par value .001, 50,000,000 shares authorized; 14,498,404 and 14,481,178 issued; 14,350,726 and 14,290,917 outstanding, respectively
                                                                                14,000              
        common stock - par value .001, 50,000,000 shares authorized; 14,489,178 and 14,481,178 issued; 14,341,500 and 14,290,917 outstanding, respectively
                                                                                 14,000             
        commitments and contingencies - see notes 11 and 16
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 14,481,178 and 14,004,092 issued; 14,290,917 and 13,964,092 outstanding, respectively
                                                                                  14,000            
        deferred compensation
                                                                                  148,000 221,000 320,000 382,000         
        common stock - par value .001, 50,000,000 shares authorized; 14,455,222 and 14,004,092 issued; 14,252,778 and 13,964,092 outstanding, respectively
                                                                                   14,000           
        common stock - par value .001, 50,000,000 shares authorized; 14,445,090 and 14,004,092 issued; 14,242,646 and 13,964,092 outstanding, respectively
                                                                                    14,000          
        deferred tax asset
                                                                                     1,554,000         
        common stock - par value .001, 50,000,000 shares authorized; 14,406,877 and 14,004,092 issued; 14,204,433 and 13,964,092 outstanding, respectively
                                                                                     14,000         
        770,219 and 254,915, respectively.
                                                                                      17,821,846        
        deferred tax asset - current
                                                                                      319,994 440,685       
        intangible assets-other
                                                                                      13,521,101        
        total intangible assets
                                                                                      25,043,372        
        deferred tax asset - long-term
                                                                                      2,181,457        
        current portion of long-term debt
                                                                                      48,877 47,785 41,111 42,728 46,407 49,450 26,165 24,703 
        long-term debt - less current portion
                                                                                      78,957 78,159       
        common stock - par value .001, 50,000,000 shares authorized; 13,977,754 and 13,518,998 issued; 13,937,754 and 13,478,998 outstanding, respectively
                                                                                      13,977        
        unearned compensation
                                                                                      -7,380 -28,743 126,351 -104,434 19,602 -14,768 -6,878 -6,878 
        other comprehensive income
                                                                                      -390,804 -596,063       
        543,810 and 254,915, respectively.
                                                                                       17,834,419       
        property, plant and equipment at cost
                                                                                       6,214,034 8,296,274      
        deferred tax asset-net
                                                                                       3,773,577       
        shareholders equity:
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized;
                                                                                              
        13,964,376 and 13,518,998 issued; 13,924,376 and 13,478,998
                                                                                              
        outstanding, respectively
                                                                                       13,964       
        total liabilities and shareholders equity
                                                                                       92,014,069 51,147,218      
        less accumulated depreciation and amortization
                                                                                        -5,880,691 -5,595,566 -5,306,398  -4,772,140 -4,562,794 
        less accumulated amortization
                                                                                        -11,950,835      
        investments
                                                                                           427,478 428,280  
        notes receivable
                                                                                         1,361,876 1,240,210 1,240,210 1,173,575 1,173,575 
        amounts due under credit line
                                                                                         1,489,259 1,474,380 1,459,647 1,448,485  
        common stock - par value .001, 50,000,000 shares authorized; 12,140,022 and 11,931,726 issued; 12,100,022 and 11,891,726 outstanding, respectively
                                                                                        12,140      
        other comprehensive loss
                                                                                        -1,068,282 -2,678,201  -1,793,769   
        inventories, net of allowance for inventory obsolesence of 110,233 and 89,969, respectively
                                                                                         11,843,267     
        property and equipment—at cost:
                                                                                              
        total
                                                                                         7,823,338 7,499,220 7,012,970 6,930,557 6,555,581 
        intangible assets, net of amortization of 11,682,339 and 9,846,241, respectively
                                                                                         11,408,143     
        commitments and contingencies
                                                                                              
        class a preferred stock—par value .001, 10,000,000 shares authorized, no shares issued or outstanding
                                                                                              
        common stock—par value .001, 50,000,000 shares authorized; 11,990,130 and 11,931,726 issued; 11,950,130 and 11,891,726 outstanding, respectively
                                                                                         11,990     
        property and equipment - at cost:
                                                                                              
        intangible assets, net of amoritization of 10,681,714 and 9,846,241, respectively
                                                                                          11,466,896    
        class a preferred stock - par value .001, 10,000,000 shares authorized, no shares issued or outstanding
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized; 11,940,391 and 11,931,726 issued; 11,900,391 and 11,891,726 outstanding, respectively
                                                                                          11,940    
        other comprehenvive loss
                                                                                          -1,130,177  -2,150,029 -2,183,564 
        short term investments
                                                                                           1,437,537 2,964,416 3,365,712 
        income taxes refundable
                                                                                              
        less accumulated depreciation
                                                                                           -4,995,111   
        intangible assets—net
                                                                                           11,542,489   
        class a preferred stock—par value .001, 10,000,000 shares authorized, no shares issued and outstanding
                                                                                              
        common stock—par value .001, 50,000,000 shares authorized, 11,931,726 and 11,075,252 issued; 11,891,726 and 11,035,252 outstanding, respectively
                                                                                           11,932   
        property and equipment – at cost:
                                                                                              
        intangible assets – net
                                                                                            11,388,264 11,529,079 
        class a preferred stock – par value .001, 10,000,000 shares authorized, no shares issued and outstanding
                                                                                              
        common stock – par value .001, 50,000,000 shares authorized, 11,930,726 and 11,075,252 issued; 11,890,726 and 11,035,252 outstanding, respectively
                                                                                            11,931  
        common stock in treasury, at cost – 40,000 shares
                                                                                            -150,625  
        class a preferred stock - par value .001, 10,000,000 shares authorized, no shares issued and outstanding
                                                                                              
        common stock - par value .001, 50,000,000 shares authorized, 11,925,252 and 11,075,252 issued; 11,885,252 and 11,035,252 outstanding, respectively
                                                                                             11,925 
      Cashflow Statements:
      Quarterly
      Annual
        Unit: USD2025-03-31 2024-12-31 2024-09-30 2024-06-30 2024-03-31 2023-12-31 2023-09-30 2023-06-30 2023-03-31 2022-12-31 2022-09-30 2022-06-30 2022-03-31 2021-12-31 2021-09-30 2021-06-30 2021-03-31 2020-12-31 2020-09-30 2020-06-30 2020-03-31 2019-12-31 2019-09-30 2019-06-30 2019-03-31 2018-12-31 2018-09-30 2018-06-30 2018-03-31 2017-12-31 2017-09-30 2017-06-30 2017-03-31 2016-12-31 2016-09-30 2016-06-30 2016-03-31 2015-12-31 2015-09-26 2015-06-27 2015-03-28 2014-12-31 2014-09-27 2014-06-28 2014-03-29 2013-09-28 2013-06-29 2013-03-30 2012-12-31 2012-09-29 2012-06-30 2012-03-31 2011-12-31 2011-10-01 2011-07-02 2011-04-02 2010-12-31 2010-10-02 2010-07-03 2010-04-03 2009-12-31 2009-10-03 2009-07-04 2009-04-04 2008-12-31 2008-09-27 2008-06-28 2008-03-29 2007-12-31 2007-09-29 2007-06-30 2007-03-31 2006-12-31 2006-09-30 2006-07-01 2006-04-01 2005-12-31 2005-10-01 2005-07-02 2005-04-02 2004-12-31 2004-10-02 2003-09-27 2003-06-28 2003-03-29 2002-12-31 2002-09-30 
                                                                                               
          cash flows from:
                                                                                               
          operating activities:
                                                                                               
          net income
        906,000             -31,712,000       -14,823,000   -6,405,000 152,000   1,205,000 455,000 -11,058,000 1,628,000 -3,625,000 -1,461,000 3,545,000 1,090,000 3,392,000 3,080,000 8,885,000 -884,000 4,148,000 664,000 11,122,000 11,223,000 6,328,000 4,976,000 5,042,000 3,631,000 4,574,000 7,841,000 3,673,000 4,734,000 6,750,000 9,472,000 6,429,000 4,233,000 3,243,000 4,839,000 2,328,000 1,837,000 2,064,000 -620,000 -1,273,000 -2,104,000 -6,585,000 2,198,000 2,011,000 6,365,000 3,378,000 8,404,000 705,000 8,980,802 3,198 -4,529,804 4,536,651 853 496 183,000 2,615,000 1,912,000 3,469,000 4,914,464 3,065,411 3,333,890 1,558,049 489,364   
          adjustments to reconcile net income to net cash from operating activities:
                                                                                               
          depreciation and amortization
        4,212,000 4,028,000 3,921,000 4,167,000 3,621,000 3,649,000 3,803,000 3,512,000 4,413,000 3,922,000 3,406,000 3,643,000 3,012,000 3,836,000 3,271,000 3,099,000 3,190,000 3,608,000 3,422,000 3,450,000 3,759,000 4,313,000 4,881,000 4,573,000 4,749,000 4,846,000 4,747,000 4,377,000 4,343,000 4,513,000 4,368,000 3,989,000 3,718,000 4,135,000 3,381,000 3,266,000 3,086,000 3,195,000 2,790,000 2,739,000 2,493,000 1,908,000 1,805,000 1,868,000 1,847,000 1,699,000 1,736,000 1,833,000 1,812,000 1,796,000 1,689,000 1,679,000 1,665,000 1,711,000 1,722,000 1,614,000 1,492,000 1,779,000 1,515,000 1,540,000 1,440,000 1,410,000 1,389,000 1,291,000 1,212,000 1,158,000 1,120,000 1,015,000 1,021,000 971,000 2,040,908 1,092 -3,091,865 3,093,927 1,062 1,011 1,006,000 967,000 790,000 690,000  566,610 471,789 538,992 588,653 455,889 529,488 
          stock-based compensation
        3,758,000 3,218,000 2,768,000 1,164,000 4,539,000 5,557,000 3,692,000 4,950,000 3,634,000 3,293,000 3,666,000 3,491,000 2,867,000 2,799,000 3,280,000 3,283,000 2,094,000  2,083,000 2,167,000 2,178,000  3,387,000 2,752,000 2,564,000  2,317,000 1,847,000 1,553,000  1,628,000 1,778,000 1,417,000                                                       
          deferred income tax (benefit) and other non-cash charges
        114,000 6,156,000 97,000 -522,000 -805,000                                                                                   
          provision for excess and obsolete inventory
        46,000 257,000 371,000 338,000 152,000 607,000 721,000 689,000 344,000 -277,000 203,000 -223,000 229,000   236,000 1,404,000 571,000 299,000 275,000 204,000 14,455,000 950,000 585,000 896,000 400,000 4,853,000 192,000 312,000  535,000 169,000 567,000                                                       
          amortization of debt discount and issuance costs
        111,000 171,000 113,000 111,000 112,000 156,000 113,000                                                                                 
          loss on disposal of assets
        448,000 574,000 -20,000 898,000 96,000 429,000 -285,000 61,000 69,000 -200,000 274,000 -30,000 112,000 88,000 44,000 66,000 20,000 32,000 52,000 289,000 10,000 2,087,000 204,000 291,000 57,000 -209,000 236,000 38,000 127,000 188,000 141,000 45,000 77,000 46,000 509,000 241,000 64,000 70,000 233,000                                                 
          (reversal of) provisions for bad debts
        -21,000                                                                                       
          change in operating assets and liabilities:
                                                                                               
          decrease in:
                                                                                               
          accounts receivable
        3,305,000 -7,839,000 2,921,000 2,538,000 1,405,000 -1,332,000 -1,998,000 902,000 2,378,000 -12,065,000 -4,235,000 3,653,000 1,449,000 -19,888,000 347,000 288,000 3,676,000 -15,786,000 1,952,000 10,096,000 16,084,000 -11,477,000 7,441,000 2,032,000 12,410,000 -14,113,000 -2,134,000 -1,556,000 1,808,000 -10,467,000 -1,070,000 3,049,000 1,722,000 -6,123,000 -968,000 2,709,000 11,109,000 -7,621,000 5,385,000 -6,585,000 18,405,000 -19,195,000 -5,689,000 -1,572,000 1,869,000 -693,000 2,103,000 7,541,000 -11,238,000 2,863,000 -5,719,000 9,254,000 -8,519,000 -6,380,000 508,000 5,412,000 -10,470,000 -1,160,000 -1,894,000 506,000 -8,271,000 -2,168,000 -1,461,000 17,669,000 -6,205,000 5,149,000 -4,766,000 8,815,000 -8,903,000 1,551,000 -1,771,960 2,960 7,133,827 -7,141,368 -5,585 953 -421,000 -2,635,000 -4,276,000 -498,000  -161,813 -2,309,598 -857,613 639,144 -3,402,889 -1,059,586 
          inventories
        153,000 5,324,000 -4,333,000 -5,721,000 1,957,000 1,280,000 -2,131,000 3,117,000 -1,530,000 1,250,000 -2,182,000 6,376,000 -2,065,000 2,400,000 -1,611,000 -3,496,000 -3,999,000 5,242,000 4,209,000 -903,000 1,795,000 5,335,000 216,000 1,221,000 -10,908,000 -8,428,000 -5,440,000 -1,456,000 -5,208,000 524,000 -1,343,000 -7,627,000 -2,480,000 1,960,000 -3,771,000 -3,333,000 -1,585,000 3,672,000 -6,596,000 -876,000 -14,221,000 -9,030,000 -6,320,000 -4,104,000 -2,541,000 -481,000 2,400,000 -1,299,000 5,154,000 175,000 259,000 -6,432,000 -3,647,000 -8,909,000 -7,248,000 -7,525,000 -1,132,000 -191,000 -2,202,000 -2,748,000 2,099,000 2,114,000 5,166,000 -1,078,000 3,252,000 -825,000 -1,727,000 -7,129,000 -2,467,000 -4,014,000 -785,242 1,242 -1,598,196 1,598,780 886 1,334 -3,619,000 -4,238,000 -3,390,000 -2,541,000  -1,669,591 15,927 -1,114,438 -1,614,265 -1,476,709 -368,182 
          prepaid expenses and other current assets
        -2,973,000  -3,473,000 2,184,000 5,587,000  942,000 7,324,000 -4,219,000  -8,465,000 -2,788,000 -3,313,000  -1,953,000 364,000 -1,346,000  -1,956,000 3,939,000 7,408,000  -1,642,000 -2,181,000 4,463,000  -731,000 -2,590,000 -936,000  2,655,000 -5,308,000 -1,181,000  -3,110,000 2,832,000 -717,000  -3,792,000 -386,000 -1,562,000 -1,620,000 -1,540,000 198,000 -539,000 -2,600,000 1,304,000 -2,069,000 -639,000 338,000 410,000 -1,979,000 1,290,000 -675,000 -1,523,000 -509,000 1,283,000 -1,618,000 1,202,000 -3,039,000 6,198,000 -1,832,000 -1,375,000 -1,027,000 1,182,000 -492,000 868,000 -2,745,000 -2,513,000 -36,000 -655,824 -3,176 2,116,067 -2,116,257 -147 -596 810,000 343,000 -1,082,000 437,000     386,757   
          increase in:
                                                                                               
          accounts payable and accrued liabilities
        -4,541,000 1,463,000 1,365,000 2,634,000 -5,721,000 7,223,000 -2,525,000 2,173,000 -2,450,000 7,026,000 149,000 -716,000 -1,682,000 893,000 -628,000 -3,702,000 -9,823,000 12,396,000 -8,611,000 -6,151,000 4,756,000 10,886,000    10,626,000 3,470,000 1,945,000 -4,846,000 3,877,000 -4,384,000 4,052,000 -2,442,000 -594,000 2,724,000 3,709,000 -5,305,000 2,378,000 3,857,000 -3,086,000 -9,550,000 9,672,000 -91,000 5,389,000 -6,103,000 3,640,000 -3,889,000 -676,000 4,228,000 -994,000 -2,023,000 -4,290,000 3,576,000 1,024,000 2,491,000 -2,447,000 6,238,000 194,000 1,804,000 2,199,000 3,329,000 1,231,000 -3,616,000 -8,835,000 2,337,000 1,308,000 -4,769,000 -4,193,000 7,385,000 4,202,000 -1,697,491 -5,509 540,062 -534,556 3,688 -6,132 5,081,000 172,000 186,000 -1,130,000  675,595 391,315 -188,172 -214,917 101,551 1,257,412 
          income taxes payable
        1,131,000 -1,047,000 -31,000 -2,636,000 783,000 -4,461,000 916,000 -161,000 -102,000 -2,912,000 1,000 -254,000 1,261,000 2,694,000 463,000 -1,157,000 -1,153,000 2,752,000 -1,051,000 -3,669,000 -1,389,000 4,720,000 -560,000 -1,796,000 -1,323,000 1,796,000 -704,000 -1,807,000 -2,571,000 20,609,000 -8,000 28,000 -618,000   -119,000 641,000   459,000 263,000 -409,000 493,000 -25,000 -1,619,000 -832,000 -1,210,000 -1,658,000 3,415,000 -851,000 1,707,000 -774,000 2,401,000 400,000 939,000 -742,000 1,147,000 -43,000 -41,000 -234,000 216,000 25,000 18,000 -2,008,000 416,000 771,000 -407,000 -1,135,000 2,063,000 378,000 -1,161,829 -1,171 -665,474 665,274 634 92 530,000 612,000 -293,000 605,000  -293,690 222,009 349,055 47,258 59,791 40,159 
          customer deposits
        -455,000 900,000 -982,000 307,000 819,000 -999,000 -324,000 -777,000 -433,000 755,000 -1,181,000 1,277,000 492,000 661,000 243,000 827,000 896,000 -1,189,000 431,000 1,345,000 -961,000 655,000 -239,000 -136,000 -310,000 620,000 -489,000 595,000 -213,000 -455,000 157,000 -40,000 -123,000 -155,000 -285,000 -235,000 -635,000 1,587,000 116,000 -132,000 -457,000 935,000 -1,264,000 250,000 -645,000 -716,000 453,000 5,000 333,000 -2,024,000 575,000 -258,000 1,784,000 607,000 -2,485,000 762,000 1,030,000 116,000 868,000 -540,000 1,550,000 -276,000 501,000 -39,000 93,000 -197,000 9,000 177,000 45,000 -44,000 -269,734 -266 -344,601 344,918 75 -115,000 -69,000 -50,000 -68,000  -97,892 -58,352 -135,749 181,578 -136,926 -651,861 
          unearned service revenues
        -1,013,000 2,566,000 -187,000 -317,000 1,282,000 3,984,000 -448,000 -871,000 121,000 -2,153,000 -888,000 -2,028,000 206,000 2,535,000 -1,596,000 -304,000 -323,000 2,665,000 -252,000 -2,774,000 -365,000 5,627,000 1,811,000 1,674,000 2,324,000 3,915,000 1,043,000 1,141,000 1,231,000 -364,000 -854,000 -902,000 430,000 -286,000 -555,000 37,000 1,077,000 4,584,000 -315,000 571,000 211,000 2,486,000 100,000 1,453,000 1,274,000 -82,000 218,000 376,000 3,835,000 539,000 530,000 661,000 1,791,000 1,393,000 811,000 1,389,000 1,415,000 210,000 365,000 348,000 1,094,000 -802,000 -247,000 -441,000 1,039,000 714,000 1,036,000 921,000 2,943,000 1,794,000 3,268,353 1,647 -2,523,811 2,525,402 1,009 589 197,000 200,000 201,000 432,000     248,685  -2,892 
          other liabilities
        -150,000 -192,000 -335,000 -413,000 -285,000 -200,000 760,000                                                                                 
          net cash from operating activities
        5,031,000 17,274,000 2,568,000 4,212,000 6,575,000 18,655,000 -4,373,000 5,137,000 -18,344,000 -6,700,000 -14,896,000 3,777,000 -7,037,000 2,095,000 -3,262,000 -2,023,000 -10,286,000 10,578,000 -5,248,000 -251,000 16,315,000 9,002,000 5,722,000 11,934,000 5,810,000 1,458,000 4,858,000 4,056,000 -4,049,000 11,123,000 3,600,000 -4,089,000 -279,000 9,132,000 723,000 14,608,000 13,120,000 20,141,000 9,491,000 -2,371,000 771,000 1,181,000 -5,029,000 10,329,000 -823,000 5,935,000 7,987,000 10,273,000 14,589,000 6,587,000 2,363,000 4,334,000 10,083,000 -3,458,000 -158,000 2,222,000 5,196,000 3,962,000 4,787,000 1,036,000 8,613,000 1,104,000 -664,000 -88,000 6,324,000 9,975,000 -3,125,000 92,000 10,496,000 4,998,000 6,100,642 358 -2,712,246 2,722,359 1,984 -2,343 4,044,000 -2,919,000 -6,272,000 1,743,000  3,066,498 1,213,561 311,801 931,881 -1,939,104 347,579 
          capital expenditures
        -1,342,000 -2,283,000 -1,871,000 -365,000 -1,323,000 -1,801,000 -704,000 -2,624,000 -1,688,000 -1,393,000 -1,497,000 -1,039,000 -2,442,000 -2,190,000 -2,773,000 -525,000 -1,547,000 -1,941,000 -1,300,000 -776,000 -757,000 -753,000 -2,229,000 -2,150,000 -1,543,000 -4,126,000 -1,731,000 -2,921,000 -2,243,000 -2,889,000 -2,412,000 -1,924,000 -1,745,000 -2,448,000 -2,692,000 -523,000 -2,057,000 -5,707,000 -2,389,000 -3,637,000 -2,436,000 -8,416,000 -5,751,000 -2,431,000 -2,124,000 -992,000 -635,000 -256,000 -704,000 -606,000 -1,830,000 -703,000 -1,104,000 -836,000 -1,351,000 -1,183,000 -1,514,000 -1,280,000 -640,000 -613,000 -468,000 -256,000 -1,016,000 -1,647,000 -5,328,000 -2,425,000 -1,375,000 -577,000 -1,123,000 -462,000 -1,344,281 -719 2,676,643 -2,677,878 -1,347 -775 -1,001,000 -1,212,000 -1,062,000 -662,000  -919,126 -316,341 -324,117 -486,251 -191,342 -404,852 
          free cash flows
        3,689,000 14,991,000 697,000 3,847,000 5,252,000 16,854,000 -5,077,000 2,513,000 -20,032,000 -8,093,000 -16,393,000 2,738,000 -9,479,000 -95,000 -6,035,000 -2,548,000 -11,833,000 8,637,000 -6,548,000 -1,027,000 15,558,000 8,249,000 3,493,000 9,784,000 4,267,000 -2,668,000 3,127,000 1,135,000 -6,292,000 8,234,000 1,188,000 -6,013,000 -2,024,000 6,684,000 -1,969,000 14,085,000 11,063,000 14,434,000 7,102,000 -6,008,000 -1,665,000 -7,235,000 -10,780,000 7,898,000 -2,947,000 4,943,000 7,352,000 10,017,000 13,885,000 5,981,000 533,000 3,631,000 8,979,000 -4,294,000 -1,509,000 1,039,000 3,682,000 2,682,000 4,147,000 423,000 8,145,000 848,000 -1,680,000 -1,735,000 996,000 7,550,000 -4,500,000 -485,000 9,373,000 4,536,000 4,756,361 -361 -35,603 44,481 637 -3,118 3,043,000 -4,131,000 -7,334,000 1,081,000  2,147,372 897,220 -12,316 445,630 -2,130,446 -57,273 
          investing activities:
                                                                                               
          purchases of property and equipment
        -1,342,000 -2,283,000 -1,871,000 -365,000 -1,323,000 -1,801,000 -704,000 -2,624,000 -1,688,000 -1,393,000 -1,497,000 -1,039,000 -2,442,000 -2,190,000 -2,773,000 -525,000 -1,547,000 -1,941,000 -1,300,000 -776,000 -757,000 -753,000 -2,229,000 -2,150,000 -1,543,000 -4,126,000 -1,731,000 -2,921,000 -2,243,000 -2,889,000 -2,412,000 -1,924,000 -1,745,000 -2,448,000 -2,692,000 -523,000 -2,057,000 -5,707,000 -2,389,000 -3,637,000 -2,436,000 -8,416,000 -5,751,000 -2,431,000 -2,124,000 -992,000 -635,000 -256,000 -704,000 -606,000 -1,830,000 -703,000 -1,104,000 -836,000 -1,351,000 -1,183,000 -1,514,000 -1,280,000 -640,000 -613,000 -468,000 -256,000 -1,016,000 -1,647,000 -5,328,000 -2,425,000 -1,375,000 -577,000 -1,123,000 -462,000 -1,344,281 -719 2,676,643 -2,677,878 -1,347 -775 -1,001,000 -1,212,000 -1,062,000 -662,000  -919,126 -316,341 -324,117 -486,251 -191,342 -404,852 
          cash paid for technology development, patents and licenses
        -1,452,000 -2,536,000 -1,430,000 -1,950,000 -1,442,000 -2,106,000 -1,455,000 -1,796,000 -1,820,000 -1,413,000 -3,606,000 -2,936,000 -2,612,000                                                                           
          net cash from investing activities
        -2,794,000 -14,818,000 -3,301,000 17,694,000 -2,765,000 -23,403,000 17,865,000 -4,420,000 -23,532,000 -6,697,000 -34,171,000 -3,975,000 -5,054,000 -5,054,000 -2,926,000 -35,323,000 -2,437,000  -7,351,000 15,629,000 7,808,000 -836,000 -3,580,000 -2,854,000 -2,072,000 -8,739,000 -34,934,000 -5,242,000 -6,859,000 -4,021,000 7,888,000 13,267,000 -2,077,000 -20,462,000 -13,331,000 -913,000 -2,379,000 15,905,000 -3,010,000 -4,689,000 -14,580,000 -8,707,000 -6,904,000 -2,939,000 -2,543,000 -1,947,000 -973,000 -750,000 -1,293,000 -935,000   -1,348,000 -1,057,000 -1,482,000 -1,477,000 -1,919,000 -1,472,000 -817,000 -818,000 -641,000 -478,000 -33,114,000 47,155,000 -5,105,000 -7,281,000 1,018,000 -6,693,000 -5,813,000 -52,338,000 -6,722,239 -761 2,690,523 -2,691,989 -1,411 -600 -7,264,000 1,646,000 4,536,000 -4,182,000  -3,972,409 1,884,566 461,425 -1,275,686 1,011,584 -592,832 
          financing activities:
                                                                                               
          payments on finance leases
        -14,000  -26,000 -69,000 -40,000  -49,000 -61,000 -44,000  -56,000 -58,000 -58,000  -62,000 -81,000 -86,000  -77,000 -78,000 -82,000  -86,000 -97,000 -90,000                                                               
          net cash from financing activities
        -14,000 -20,000 -10,040,000 -2,754,000 -40,000 306,000 -959,000 -352,000 72,280,000 759,000 -475,000 -307,000 -974,000 113,000 250,000 -477,000 1,696,000 9,212,000 561,000 146,000 1,139,000 4,678,000 -1,293,000 44,000 -1,186,000 -369,000 13,092,000 348,000 6,739,000 3,105,000 -420,000 14,000 266,000 -184,000 -146,000 64,000 515,000 -22,743,000 116,000 147,000 2,309,000 877,000 943,000 83,000 1,627,000 183,000 28,000 3,794,000 42,000 506,000 404,000 6,213,000 1,581,000 1,228,000 5,027,000 2,744,000 1,107,000 7,000 -2,412,000 2,752,000 7,000 53,000 -6,000 -8,884,000 -74,000 63,000 -23,000 65,000 -2,050,000 55,781,000 5,558,345 2,655 146,259 -145,894 -120 14 50,000 46,000 88,000 184,000  76,849 -1,066,639 322,621 26,451 4,369 1,448,102 
          effect of exchange rate changes on cash and cash equivalents
        1,519,000 -2,646,000 1,772,000 -756,000 -1,039,000 1,310,000 -842,000 -701,000 348,000 1,916,000 -3,893,000 -4,718,000 -1,732,000 -979,000 -1,585,000 1,203,000 -4,649,000 4,385,000 1,975,000 936,000 -1,656,000 1,707,000 -2,370,000 784,000 -639,000 1,335,000 -1,472,000 -4,434,000 2,035,000 912,000 1,179,000 2,544,000 1,779,000 -3,666,000 562,000 -496,000 1,666,000 -1,922,000 -1,198,000 1,423,000 -1,723,000 -972,000 -1,935,000 -354,000 -175,000 1,426,000 -332,000 -1,952,000 -610,000 -401,000 473,000 -603,000 -121,000 293,000 670,000 -929,000 1,713,000 199,000 2,040,000 283,000 -302,000 -68,000 -653,000 -450,000 2,189,000 646,000 -599,000 224,000 -2,244,000 -2,245,000 -1,414,350 -650 211,875 -212,115 66 49 1,489,000 1,236,000 -903,000 -601,000        
          increase in cash and cash equivalents
        3,742,000 -210,000 -9,001,000 18,396,000 2,731,000 -3,132,000 11,691,000 -336,000 30,752,000     -3,825,000 -7,523,000 -36,620,000 -15,676,000 21,996,000 -10,063,000 16,460,000 23,606,000 14,551,000 -1,521,000 9,908,000 1,913,000 -6,315,000 -18,456,000   11,119,000 12,247,000 11,736,000 -311,000  -12,192,000 13,263,000 12,922,000     -7,621,000 -12,925,000 7,119,000 -1,914,000 5,597,000 6,710,000 11,365,000 12,728,000 5,757,000 1,160,000 9,048,000 10,195,000 -2,994,000 4,057,000 2,560,000 6,097,000 2,696,000 3,598,000 3,253,000 7,677,000 611,000 -34,437,000 37,733,000 3,334,000 3,403,000 -2,729,000 -6,312,000 389,000 6,196,000 3,522,398 1,602           1,933,068 -1,369,931 897,266   
          cash and cash equivalents, beginning of period
        88,703,000 76,787,000 37,812,000  121,989,000  185,633,000  133,634,000  108,783,000  140,960,000  106,169,000  107,356,000  109,289,000  124,630,000 93,233,000  64,540,000 50,722,000 35,078,000 23,494,000 25,798,000  15,673,311 15,689 -9,268,722 9,268,722 9,278 16,357,000 -1 4,023,615  
          cash and cash equivalents, end of period
        92,445,000 -210,000 -9,001,000 18,396,000 79,518,000 -3,132,000 11,691,000 -336,000 68,564,000  -53,435,000 -5,223,000 107,192,000  -7,523,000 -36,620,000 169,957,000  -10,063,000 16,460,000 157,240,000  -1,521,000 9,908,000 110,696,000  -18,456,000 -5,272,000 138,826,000  12,247,000 11,736,000 105,858,000  -12,192,000 13,263,000 120,278,000  5,399,000 -5,490,000 96,066,000  -12,925,000 7,119,000 122,716,000 5,597,000 6,710,000 104,598,000  5,757,000 1,160,000 73,588,000 10,195,000 -2,994,000 4,057,000 53,282,000 6,097,000 2,696,000 3,598,000 38,331,000 7,677,000 611,000 -34,437,000 61,227,000 3,334,000 3,403,000 -2,729,000 19,486,000  6,196,000 19,195,709 17,291 -8,932,311 8,941,083 519 6,398 -1,681,000 9,000 -2,551,000 13,501,000 4,182,864 -506,668 1,933,068 -1,369,932 4,920,881  1,250,594 
          net loss
         -986,000 -289,000 -524,000 -7,267,000 1,588,000 -8,756,000 -28,245,000 -21,164,000  -6,260,000 -8,574,000 -9,687,000   -1,176,000 -3,221,000  -3,024,000                                                                    71,995 
          adjustments to reconcile net loss to net cash used by operating activities:
                                                                                               
          inventory write-downs
             1,208,000                                                                                 
          asset impairment charges
             374,000 762,000                                                                                 
          provision for bad debts, net of recoveries
                                                                                               
          impairment of intangible assets
                                                                                               
          change in operating assets and liabilities, net of acquisitions:
                                                                                               
          prepaid expenses and other assets
                                                                                         49,999 -77,580    376,348 
          purchases of short-term investments
               -20,024,000                                                    -7,000 -7,000 -31,997,000 -32,975,000  -4,605,000 5,395,000 -5,785,000         -7,600,000 -2,400,000 -900,000        
          maturities of short-term investments
                                                                                               
          acquisitions of businesses and minority share investments, net of cash received
                                                                                               
          payments on capital leases
                                 -73,000 -38,000 -46,000 -102,000 -2,000 -2,000 -2,000 -2,000 -2,000 -2,000 -2,000 -2,000 -1,000 -3,000 -2,000 -2,000 -2,000 46,000 -50,000 -13,000 -63,000 -13,000 -21,000 33,000 -131,000 -23,000 -23,000 -95,000 -22,000 -24,000 -21,000 -20,000 -19,000 -33,000 6,000 -6,000 -55,000                        
          repurchases of common stock
                                                                    -8,829,000                        
          cash settlement of equity awards
                                                                                               
          short term debt
                                                                                               
          proceeds from issuance of 5.50% convertible senior notes, due 2028, net of discount, issuance cost and accrued interest
             72,310,000                                                                               
          repayment of 5.50% convertible senior notes, due 2028
                                                                                             
          payment of contingent consideration for business acquisition
                                                                                              
          adjustments to reconcile net loss to net cash from operating activities:
                                                                                               
          provisions for bad debts, net of recoveries
          662,000 4,000 300,000  426,000 375,000 33,000  64,000 16,000  76,000 46,000 -89,000  -245,000 695,000 -15,000  998,000                                                                 
          maturity of short-term investments
                                                                                              
          deferred income tax expense
                562,000 1,844,000 616,000 -114,000 66,000            8,000  29,000 -62,000 -128,000  56,000 162,000 6,000  -473,000 -426,000 165,000 -1,211,000 -5,000 -1,711,000 2,272,000 1,097,000 -4,555,000 -839,000 -410,000  119,000 1,162,000    -5,000 -783,000 127,000 -307,000 291,000 -1,903,000 930,000 246,000 34,000 67,000 1,739,000 150,000 30,000            -278    310,000        
          proceeds from issuance of stock related to stock option exercises
                     45,000 670,000 47,000 5,118,000 9,347,000 1,530,000 1,052,000 2,802,000 5,573,000 1,593,000 443,000 292,000 -46,000 13,768,000 348,000 6,785,000                                                           
          deferred income tax expense and other non-cash charges
              -41,000                                                                                 
          acquisition of business, net of cash acquired
                                                                                              
          payments for taxes related to net share settlement of equity awards
              188,000 -291,000 14,000 -308,000 -419,000 -249,000 -916,000 135,000 -358,000 -443,000 -3,336,000 -34,000 -159,000 -828,000 -1,581,000 -810,000 51,000 -302,000 -1,138,000                                                               
          adjustments to reconcile net income to net cash used by operating activities:
                                                                                               
          provision for bad debts
                                 547,000 149,000 187,000 24,000 49,000 91,000 141,000 89,000 171,000 153,000 264,000 310,000          41,000 274,000    11,000 549,000 538,000 753,000 329,000 770,000 832,000 458,000 348,000 891,000 312,000 252,000 397,000 646,000 308,000 138,000 150,000 195,000 27,969 31          256,556 -137,646     
          impairment of leasehold improvements
                                                                                               
          impairment of intangibles
                                                                                               
          proceeds from sale of investments
                         16,000,000 9,000,000 16,300,000                                                                 
          other
                                                                                               
          payments of contingent consideration for acquisitions
                            -2,851,000 -250,000                                                               
          cash and cash equivalents, beginning of year
                                                                                               
          cash and cash equivalents, end of year
                                                                                               
          decrease in cash and cash equivalents
                  -53,435,000 -5,223,000 -14,797,000                -2,134,000            -13,223,000                                 -327,639 519 -2,880  9,000 -2,551,000 -2,856,000       1,250,594 
          impairment of goodwill
                                                                                               
          impairment of acquired intangibles
                                                                                               
          impairment of loan to affiliate
                                                                                               
          purchases of investments
                             -16,300,000                                                               -29,556   
          acquisition of business, net of cash received
                                        -6,797,000                                                      
          benefit from excess and obsolete inventory
                                                                                               
          deferred income tax benefit
                      -1,658,000 -397,000 -1,612,000  -2,557,000 -78,000 -2,326,000  -58,000                                           -246,000 -1,800,000 471,000  -354,000 -188,111 111 402,020 -401,264              
          decrease (increase) in:
                                                                                               
          proceeds from asset sales
                          125,000                                                                     
          payments for intangible assets
                      -153,000 -890,000 -890,000  -140,000 -238,000 -435,000  -802,000 -704,000 -529,000 -184,000 -530,000 -536,000 -650,000 -1,032,000 -700,000 -313,000 -332,000 -217,000 -728,000 -390,000 -322,000 -389,000 -566,000 -1,052,000 -133,000 -141,000 -153,000 -508,000 -419,000 -955,000 -338,000 -494,000 -589,000 -329,000 -250,000 -193,000 -244,000 -221,000 -131,000 -294,000 -405,000 -192,000 -177,000 -205,000 -166,000 -213,000 -103,000 -188,000 -182,000 -251,000 -3,002,000 -331,000 -95,000 -116,000 -147,958 -42 713,180 -713,411 -164 -425 -763,000 308,000 -233,000 -249,000   -216,064 494,547 -759,879  -160,996 
          compensation for stock options and restricted stock units
                                         1,306,000 1,337,000 1,249,000 1,482,000 515,000 1,323,000 1,270,000 1,198,000 1,009,000 1,225,000 1,198,000 1,246,000 1,132,000 1,087,000 1,018,000 1,062,000 1,090,000 1,093,000 773,000 685,000 676,000 724,000 642,000 593,000 596,000 639,000 564,000 622,000 626,000 663,000 538,000                        
          payments for internally capitalized patents
                                                                                               
          net cash provided (used in) by investing activities
                                                                                               
          impairment charge on equity method investment
                                                                                              
          loan originated to affiliate
                                                                                               
          general services administration liability
                                                                                               
          acquisition of businesses
                                  -23,673,000 1,000 -3,966,000                                                           
          equity investments and advances to affiliates
                                                                                              
          accounts payable, accrued liabilities, and lease liability
                               1,379,000 -9,172,000                                                               
          gsa liability
                                                                                               
          (recoveries) provisions for bad debts
                                -100,000                                                               
          income tax benefit from exercise of stock options
                                         -3,000 -284,000 -5,000 -65,000 -21,000 -6,000 6,000 -292,000 -32,000 -78,000 -1,000 -58,000 -6,000 -808,000 -21,000 -58,000 -1,056,000 -181,000 -399,000 -776,000 -237,000 -106,000 -11,000 -10,000 -6,000 -2,000    -2,000 -43,000 3,956,000 -733,000 -2,261,422 1,422     -25,000 36,000 214,000 157,000  -1,419,028      
          (purchases of) proceeds from sale of investments
                                                                                               
          equity investments
                                                                                               
          payment of contingent consideration for acquisitions
                                                                                               
          write-down of inventories
                                         1,197,000 1,497,000 1,027,000 413,000 1,318,000 8,055,000 477,000 1,028,000                                               
          repurchase of common stock
                                                                                               
          proceeds from issuance of stock
                                     3,207,000 103,000 16,000 268,000 155,000 6,000 61,000 452,000 1,000 111,000 156,000 2,019,000 847,000 867,000 36,000 1,619,000 183,000 35,000 3,049,000 55,000 506,000 313,000 5,288,000 1,423,000 852,000 4,346,000 2,529,000 1,025,000 17,000 88,000 275,000 38,000    -36,000 48,000 80,000 12,000 55,053,000 3,354,776 1,224     58,000 53,000 82,000 209,000  32,172 431,883     
          acquisition of business
                                                                                              
          proceeds from sale of short-term investments
                                                                                               
          purchase of businesses acquired
                                                -12,011,000                                               
          purchase of business acquired, net of cash
                                                                                               
          provision for (net recovery of) bad debts
                                                319,000        132,000 -71,000                                      
          purchase of businesses acquired, net of cash
                                              -55,000                                                 
          (net recovery of) provision for bad debts
                                                 -34,000   -120,000                                           
          purchase of business acquired
                                                 -150,000                                              
          deferred income tax expense expense
                                                                                               
          proceeds from notes payable
                                                                2,490,000                            
          payments on notes payable
                                                                                             
          net cash (used in) investing activities
                                                           -896,000                                    
          proceeds from sales of short-term investments
                                                                    -2,000 2,000 81,965,000                        
          purchases of treasury stock
                                                                                               
          (purchases of) proceeds from short-term investments
                                                                            -4,595,000 -51,760,000                  
          amortization of stock options and restricted stock units
                                                                         626,000 638,000 422,000 260,000 383,000 572,801 199 -150,599 150,852 53 95            
          payments of capital leases
                                                                           -58,000 -32,000 -5,000 -54,956 -44 145,796 -145,893 -54 -53            
          income tax expense from exercise of stock options
                                                                                               
          acquisition of iqvolution
                                                                                    -1,250,000 -865,000 -4,270,000        
          proceeds from short-term investments
                                                                                -699,300 699,300 100 600 2,100,000 3,800,000 9,095,000 1,900,000        
          proceeds from capital leases
                                                                               53    67            
          adjustments to reconcile net income to net cash from
                                                                                               
          increase (decrease) in:
                                                                                               
          adjustments to reconcile net income to net cash
                                                                                               
          provided by operating activities:
                                                                                               
          employee stock option expense
                                                                                   18  -115,000 61,000 -121,000        
          settlement of smx arbitration received in stock
                                                                                               
          deferred income taxes
                                                                                    187,000           
          employee stock plans expense
                                                                                               
          proceeds from repayment of notes receivable
                                                                                               
          payments on line of credit, capital leases and long-term debt
                                                                                               
          (decrease) increase in cash and cash equivalents
                                                                                               
          payments on line of credit and capital leases
                                                                                     -7,000 6,000 -25,000        
          adjustments to reconcile net income to net cash and cash equivalents provided by operating activities:
                                                                                               
          cash flows from operating activities:
                                                                                               
          cash flows from investing activities:
                                                                                               
          cash flows from financing activities:
                                                                                               
          effect of foreign currency exchange rate changes on cash and cash equivalents
                                                                                               
          provision for inventory obsolescence
                                                                                               
          deferred tax asset
                                                                                               
          intangibles expenditures
                                                                                               
          (purchases) proceeds of investments
                                                                                               
          proceeds of long-term debt
                                                                                               
          effect of exchange rate changes on cash
                                                                                         322,393 -98,420 -2,465,778 1,214,620 196,384 47,745 
          provided by (used in) operating activities:
                                                                                               
          foreign currency losses
                                                                                               
          inventory write-down
                                                                                               
          provision for inventory losses
                                                                                          270,266 96,250 96,249 331,749 -606,487 
          employee stock options
                                                                                          -8,619 108,290 41,448 7,504 
          deferred revenues
                                                                                          -45,739     
          borrowings under line of credit
                                                                                           14,879 14,733   
          payments of long-term debt, capital lease obligations and notes payable
                                                                                          -1,468,910 -9,938 -8,356  -383 
          adjustments to reconcile net income to net cash provided (used in) by operating activities:
                                                                                               
          income taxes refundable
                                                                                             
          acquisition of smx
                                                                                             
          proceeds from investments
                                                                                          1,176,761    -26,984 
          foreign currency
                                                                                               
          adjustments to reconcile net income to net cash from operating activties:
                                                                                               
          bad debt expense
                                                                                            41,927  46,908 
          proceeds from issuance of common stock
                                                                                            20,074   
          foreign currency gains
                                                                                             -63,384  
          prepaid expenses & other current assets
                                                                                               
          unearned revenues
                                                                                               
          cash from investments
                                                                                               
          investment in notes receivable
                                                                                               
          investment in intangible assets
                                                                                               
          borrowings on line of credit
                                                                                               
          payments of long-term debt and notes payable
                                                                                               
          proceeds from issuance of stock—net
                                                                                               
          increase in cash
                                                                                               
          cash, beginning of period
                                                                                               
          cash, end of period
                                                                                               
          inventory write down
                                                                                               
          provision for deferred income taxes
                                                                                               
          notes receivable