<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by EDGARfilings PROfile 4.3.3.1 Broadridge-->
<xbrl xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:us-gaap="http://fasb.org/us-gaap/2017-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2014-01-31" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2017-01-31" xmlns:naics="http://xbrl.sec.gov/naics/2017-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2011-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2017-01-31" xmlns:tact="http://transact-tech.com/20171231" xmlns="http://www.xbrl.org/2003/instance">
  <link:schemaRef xlink:type="simple" xlink:href="tact-20171231.xsd" />
  <xbrli:context id="c20170101to20171231">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170630">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-06-30</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20180228">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2018-02-28</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_StatementClassOfStockAxis_SeriesAPreferredStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:SeriesAPreferredStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_StatementClassOfStockAxis_SeriesAPreferredStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:SeriesAPreferredStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20141231_StatementEquityComponentsAxis_TreasuryStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2014-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20141231_StatementEquityComponentsAxis_CommonStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2014-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20141231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2014-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20141231_StatementEquityComponentsAxis_RetainedEarningsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2014-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20141231">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2014-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20141231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2014-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_StatementEquityComponentsAxis_RetainedEarningsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_StatementEquityComponentsAxis_TreasuryStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231_StatementEquityComponentsAxis_RetainedEarningsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231_StatementEquityComponentsAxis_CommonStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_StatementEquityComponentsAxis_CommonStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_StatementEquityComponentsAxis_TreasuryStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231_StatementEquityComponentsAxis_TreasuryStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_StatementEquityComponentsAxis_CommonStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_StatementEquityComponentsAxis_RetainedEarningsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember_RangeAxis_MinimumMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:ComputerSoftwareAndEquipmentMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:RangeAxis">us-gaap:MinimumMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember_RangeAxis_MinimumMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FurnitureAndOfficeEquipmentMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:RangeAxis">us-gaap:MinimumMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_ToolsDiesAndMoldsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ToolsDiesAndMoldsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember_RangeAxis_MaximumMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:RangeAxis">us-gaap:MaximumMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FurnitureAndOfficeEquipmentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember_RangeAxis_MaximumMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:ComputerSoftwareAndEquipmentMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:RangeAxis">us-gaap:MaximumMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_SuzoHappMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:SuzoHappMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_IGTMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:IGTMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_MajorCustomersAxis_SuzoHappMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:SuzoHappMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_MajorCustomersAxis_SuzoHappMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:SuzoHappMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_IGTMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:IGTMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_MajorCustomersAxis_IGTMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:IGTMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_MajorCustomersAxis_IGTMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:IGTMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_SuzoHappMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:SuzoHappMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_SuzoHappMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:SuzoHappMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_IGTMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">tact:IGTMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_RangeAxis_MaximumMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:RangeAxis">us-gaap:MaximumMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FurnitureAndOfficeEquipmentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:ComputerSoftwareAndEquipmentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:ComputerSoftwareAndEquipmentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FurnitureAndOfficeEquipmentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_PropertyPlantAndEquipmentByTypeAxis_FixedAssetsExcludingConstructionInProcessMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FixedAssetsExcludingConstructionInProcessMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_PropertyPlantAndEquipmentByTypeAxis_FixedAssetsExcludingConstructionInProcessMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FixedAssetsExcludingConstructionInProcessMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tact:TDBankNAMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tact:TDBankNAMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember_VariableRateAxis_PrimeRateMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tact:TDBankNAMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171122_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tact:TDBankNAMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-11-22</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20141126_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tact:TDBankNAMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2014-11-26</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150408to20150408_LitigationCaseAxis_CivilComplaintFiledByAveryDennisonCorporationMember_LitigationStatusAxis_SettledLitigationMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LitigationCaseAxis">tact:CivilComplaintFiledByAveryDennisonCorporationMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:LitigationStatusAxis">us-gaap:SettledLitigationMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-04-08</xbrli:startDate>
      <xbrli:endDate>2015-04-08</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20141001to20141231_LitigationCaseAxis_CivilComplaintFiledByAveryDennisonCorporationMember_LitigationStatusAxis_SettledLitigationMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LitigationStatusAxis">us-gaap:SettledLitigationMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:LitigationCaseAxis">tact:CivilComplaintFiledByAveryDennisonCorporationMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2014-10-01</xbrli:startDate>
      <xbrli:endDate>2014-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150401to20150630_LitigationCaseAxis_CivilComplaintFiledByAveryDennisonCorporationMember_LitigationStatusAxis_SettledLitigationMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LitigationStatusAxis">us-gaap:SettledLitigationMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:LitigationCaseAxis">tact:CivilComplaintFiledByAveryDennisonCorporationMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-04-01</xbrli:startDate>
      <xbrli:endDate>2015-06-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:EquipmentAndRealPropertyMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:EquipmentAndRealPropertyMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:EquipmentAndRealPropertyMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:EquipmentAndRealPropertyMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MinimumMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:RangeAxis">us-gaap:MinimumMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MaximumMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:RangeAxis">us-gaap:MaximumMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_PlanNameAxis_EquityIncentivePlan2014Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2014Member</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_AwardTypeAxis_EmployeeStockOptionMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_AwardTypeAxis_EmployeeStockOptionMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_AwardTypeAxis_RestrictedStockUnitsRSUMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_AwardTypeAxis_RestrictedStockUnitsRSUMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231_AwardTypeAxis_EmployeeStockOptionMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_AwardTypeAxis_EmployeeStockOptionMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_AwardTypeAxis_EmployeeStockOptionMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20140301to20140331_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">tact:ChiefExecutiveOfficerAndChiefFinancialOfficerMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis">us-gaap:DeferredCompensationShareBasedPaymentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2014-03-01</xbrli:startDate>
      <xbrli:endDate>2014-03-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20130301to20130331_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis">us-gaap:DeferredCompensationShareBasedPaymentsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">tact:ChiefExecutiveOfficerAndChiefFinancialOfficerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2013-03-01</xbrli:startDate>
      <xbrli:endDate>2013-03-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">tact:ChiefExecutiveOfficerAndChiefFinancialOfficerMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis">us-gaap:DeferredCompensationShareBasedPaymentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis">us-gaap:DeferredCompensationShareBasedPaymentsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">tact:ChiefExecutiveOfficerAndChiefFinancialOfficerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis">us-gaap:DeferredCompensationShareBasedPaymentsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">tact:ChiefExecutiveOfficerAndChiefFinancialOfficerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_IncomeTaxAuthorityAxis_DomesticCountryMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_TaxCreditCarryforwardAxis_ResearchMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20141231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2014-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160225_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_NewStockRepurchaseProgramMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:RangeAxis">us-gaap:MaximumMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">tact:NewStockRepurchaseProgramMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-02-25</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160226to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">tact:StockRepurchaseProgramMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-02-26</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20050101to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">tact:StockRepurchaseProgramMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2005-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20150731_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">tact:StockRepurchaseProgramMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-07-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">tact:StockRepurchaseProgramMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20151231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConsolidationItemsAxis">us-gaap:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_StatementGeographicalAxis_EuropeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:EuropeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_StatementGeographicalAxis_PacificRimMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:PacificRimMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_StatementGeographicalAxis_PacificRimMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:PacificRimMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_StatementGeographicalAxis_PacificRimMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:PacificRimMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_StatementGeographicalAxis_CA">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_StatementGeographicalAxis_InternationalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_StatementGeographicalAxis_InternationalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_StatementGeographicalAxis_InternationalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_StatementGeographicalAxis_EuropeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:EuropeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20150101to20151231_StatementGeographicalAxis_EuropeMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">us-gaap:EuropeMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-01-01</xbrli:startDate>
      <xbrli:endDate>2015-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20171231_StatementGeographicalAxis_CA">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20161231_StatementGeographicalAxis_CA">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160101to20160331">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-03-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170401to20170630">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-04-01</xbrli:startDate>
      <xbrli:endDate>2017-06-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170701to20170930">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-07-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20161001to20161231">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-10-01</xbrli:startDate>
      <xbrli:endDate>2016-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20171001to20171231">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-10-01</xbrli:startDate>
      <xbrli:endDate>2017-12-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160401to20160630">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-04-01</xbrli:startDate>
      <xbrli:endDate>2016-06-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20170101to20170331">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-03-31</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20160701to20160930">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-07-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="c20180301_SubsequentEventTypeAxis_SubsequentEventMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2018-03-01</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:unit id="U001">
    <xbrli:measure>iso4217:USD</xbrli:measure>
  </xbrli:unit>
  <xbrli:unit id="U002">
    <xbrli:measure>xbrli:shares</xbrli:measure>
  </xbrli:unit>
  <xbrli:unit id="U003">
    <xbrli:divide>
      <xbrli:unitNumerator>
        <xbrli:measure>iso4217:USD</xbrli:measure>
      </xbrli:unitNumerator>
      <xbrli:unitDenominator>
        <xbrli:measure>xbrli:shares</xbrli:measure>
      </xbrli:unitDenominator>
    </xbrli:divide>
  </xbrli:unit>
  <xbrli:unit id="U004">
    <xbrli:measure>tact:Segment</xbrli:measure>
  </xbrli:unit>
  <xbrli:unit id="U005">
    <xbrli:measure>xbrli:pure</xbrli:measure>
  </xbrli:unit>
  <xbrli:unit id="U006">
    <xbrli:measure>tact:Incentive</xbrli:measure>
  </xbrli:unit>
  <!--Amendment Flag-->
  <dei:AmendmentFlag contextRef="c20170101to20171231">false</dei:AmendmentFlag>
  <!--Current Fiscal Year End Date-->
  <dei:CurrentFiscalYearEndDate contextRef="c20170101to20171231">--12-31</dei:CurrentFiscalYearEndDate>
  <!--Document Period End Date-->
  <dei:DocumentPeriodEndDate contextRef="c20170101to20171231">2017-12-31</dei:DocumentPeriodEndDate>
  <!--Entity Well-known Seasoned Issuer-->
  <dei:EntityWellKnownSeasonedIssuer contextRef="c20170101to20171231">No</dei:EntityWellKnownSeasonedIssuer>
  <!--Entity Voluntary Filers-->
  <dei:EntityVoluntaryFilers contextRef="c20170101to20171231">No</dei:EntityVoluntaryFilers>
  <!--Entity Current Reporting Status-->
  <dei:EntityCurrentReportingStatus contextRef="c20170101to20171231">Yes</dei:EntityCurrentReportingStatus>
  <!--Entity Filer Category-->
  <dei:EntityFilerCategory contextRef="c20170101to20171231">Smaller Reporting Company</dei:EntityFilerCategory>
  <!--Entity Public Float-->
  <dei:EntityPublicFloat contextRef="c20170630" unitRef="U001" decimals="0">58800000</dei:EntityPublicFloat>
  <!--Entity Registrant Name-->
  <dei:EntityRegistrantName contextRef="c20170101to20171231">TRANSACT TECHNOLOGIES INC</dei:EntityRegistrantName>
  <!--Entity Central Index Key-->
  <dei:EntityCentralIndexKey contextRef="c20170101to20171231">0001017303</dei:EntityCentralIndexKey>
  <!--Entity Common Stock, Shares Outstanding-->
  <dei:EntityCommonStockSharesOutstanding contextRef="c20180228" unitRef="U002" decimals="INF">7478064</dei:EntityCommonStockSharesOutstanding>
  <!--Document Fiscal Year Focus-->
  <dei:DocumentFiscalYearFocus contextRef="c20170101to20171231">2017</dei:DocumentFiscalYearFocus>
  <!--Document Fiscal Period Focus-->
  <dei:DocumentFiscalPeriodFocus contextRef="c20170101to20171231">FY</dei:DocumentFiscalPeriodFocus>
  <!--Document Type-->
  <dei:DocumentType contextRef="c20170101to20171231">10-K</dei:DocumentType>
  <!--Accounts Payable and Accrued Liabilities Disclosure [Text Block]-->
  <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;6. Accrued liabilities&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The components of accrued liabilities are:&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Salaries and compensation related&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,288&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,722&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Warranty&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;186&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;169&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Professional and consulting&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;209&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;153&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Other&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;656&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;350&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,339&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,394&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
  <!--Accounts payable-->
  <us-gaap:AccountsPayableCurrent contextRef="c20161231" unitRef="U001" decimals="-3">4894000</us-gaap:AccountsPayableCurrent>
  <!--Accounts payable-->
  <us-gaap:AccountsPayableCurrent contextRef="c20171231" unitRef="U001" decimals="-3">3841000</us-gaap:AccountsPayableCurrent>
  <!--Income taxes payable-->
  <us-gaap:AccruedIncomeTaxesCurrent contextRef="c20161231" unitRef="U001" decimals="-3">19000</us-gaap:AccruedIncomeTaxesCurrent>
  <!--Income taxes payable-->
  <us-gaap:AccruedIncomeTaxesCurrent contextRef="c20171231" unitRef="U001" decimals="-3">0</us-gaap:AccruedIncomeTaxesCurrent>
  <!--Accrued liabilities-->
  <us-gaap:AccruedLiabilitiesCurrent contextRef="c20171231" unitRef="U001" decimals="-3">3339000</us-gaap:AccruedLiabilitiesCurrent>
  <!--Accrued liabilities-->
  <us-gaap:AccruedLiabilitiesCurrent contextRef="c20161231" unitRef="U001" decimals="-3">2394000</us-gaap:AccruedLiabilitiesCurrent>
  <!--Professional and consulting-->
  <us-gaap:AccruedProfessionalFeesCurrent contextRef="c20161231" unitRef="U001" decimals="-3">153000</us-gaap:AccruedProfessionalFeesCurrent>
  <!--Professional and consulting-->
  <us-gaap:AccruedProfessionalFeesCurrent contextRef="c20171231" unitRef="U001" decimals="-3">209000</us-gaap:AccruedProfessionalFeesCurrent>
  <!--Treasury stock, 3,851,967 and 3,388,589 shares, at cost-->
  <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c20161231" unitRef="U001" decimals="-3">-109000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
  <!--Treasury stock, 3,851,967 and 3,388,589 shares, at cost-->
  <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c20171231" unitRef="U001" decimals="-3">-99000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
  <!--Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment-->
  <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c20171231" unitRef="U001" decimals="-3">19752000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
  <!--Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment-->
  <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c20161231" unitRef="U001" decimals="-3">19215000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
  <!--Additional paid-in capital-->
  <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c20171231" unitRef="U001" decimals="-3">31353000</us-gaap:AdditionalPaidInCapitalCommonStock>
  <!--Additional paid-in capital-->
  <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c20161231" unitRef="U001" decimals="-3">29701000</us-gaap:AdditionalPaidInCapitalCommonStock>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-29000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Treasury Stock [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20160101to20161231" unitRef="U001" decimals="-3">1000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Treasury Stock [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Retained Earnings [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Additional Paid-in Capital [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">-48000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Retained Earnings [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-AOCI Attributable to Parent [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-AOCI Attributable to Parent [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-48000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Common Stock [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Common Stock [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Common Stock [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Treasury Stock [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Retained Earnings [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-AOCI Attributable to Parent [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Additional Paid-in Capital [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">1000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Relinquishments of stock options and deferred stock units to pay withholding taxes-Additional Paid-in Capital [Member]-->
  <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">-29000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Additional Paid-in Capital [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">609000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Common Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Treasury Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20150101to20151231" unitRef="U001" decimals="-3">488000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Common Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Additional Paid-in Capital [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">611000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Common Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Treasury Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Retained Earnings [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-AOCI Attributable to Parent [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20170101to20171231" unitRef="U001" decimals="-3">609000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Treasury Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-AOCI Attributable to Parent [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Additional Paid-in Capital [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">488000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-AOCI Attributable to Parent [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Retained Earnings [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20160101to20161231" unitRef="U001" decimals="-3">611000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition-Retained Earnings [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
  <!--Issuance of deferred stock units-Retained Earnings [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Additional Paid-in Capital [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-AOCI Attributable to Parent [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-AOCI Attributable to Parent [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Common Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Additional Paid-in Capital [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">160000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-AOCI Attributable to Parent [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Treasury Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20160101to20161231" unitRef="U001" decimals="-3">202000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Treasury Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Retained Earnings [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Common Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Treasury Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Additional Paid-in Capital [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">202000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Retained Earnings [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-Common Stock [Member]-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Issuance of deferred stock units-->
  <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition contextRef="c20150101to20151231" unitRef="U001" decimals="-3">160000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition>
  <!--Advertising expense-->
  <us-gaap:AdvertisingExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">703000</us-gaap:AdvertisingExpense>
  <!--Advertising expense-->
  <us-gaap:AdvertisingExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">974000</us-gaap:AdvertisingExpense>
  <!--Advertising expense-->
  <us-gaap:AdvertisingExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">858000</us-gaap:AdvertisingExpense>
  <!--Advertising-->
  <us-gaap:AdvertisingCostsPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Advertising:&lt;/font&gt;&amp;#160;&amp;#160;Advertising costs are expensed as incurred.&amp;#160;&amp;#160;Advertising expenses, which are included in selling and marketing expense on the accompanying Consolidated Statements of Income, for 2017, 2016, and 2015 totaled $974,000, $703,000 and $858,000, respectively. These expenses include items such as consulting and professional services, tradeshows, and print advertising.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:AdvertisingCostsPolicyTextBlock>
  <!--Allocated Share-based Compensation Expense-General and Administrative Expense [Member]-->
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c20150101to20151231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember" unitRef="U001" decimals="-3">488000</us-gaap:AllocatedShareBasedCompensationExpense>
  <!--Allocated Share-based Compensation Expense-General and Administrative Expense [Member]-->
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c20170101to20171231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember" unitRef="U001" decimals="-3">609000</us-gaap:AllocatedShareBasedCompensationExpense>
  <!--Allocated Share-based Compensation Expense-General and Administrative Expense [Member]-->
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c20160101to20161231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember" unitRef="U001" decimals="-3">611000</us-gaap:AllocatedShareBasedCompensationExpense>
  <!--Allowance for Doubtful Accounts Receivable, Current-->
  <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c20161231" unitRef="U001" decimals="-3">50000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
  <!--Allowance for Doubtful Accounts Receivable, Current-->
  <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c20151231" unitRef="U001" decimals="-3">50000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
  <!--Allowance for Doubtful Accounts Receivable, Current-->
  <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c20141231" unitRef="U001" decimals="-3">100000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
  <!--Allowance for Doubtful Accounts Receivable, Current-->
  <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c20171231" unitRef="U001" decimals="-3">100000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
  <!--Allowance for Doubtful Accounts Receivable, Write-offs-->
  <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs contextRef="c20160101to20161231" unitRef="U001" decimals="-3">0</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
  <!--Allowance for Doubtful Accounts Receivable, Write-offs-->
  <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
  <!--Allowance for Doubtful Accounts Receivable, Write-offs-->
  <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs contextRef="c20150101to20151231" unitRef="U001" decimals="-3">57000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
  <!--Amortization expense-->
  <us-gaap:AmortizationOfIntangibleAssets contextRef="c20170101to20171231" unitRef="U001" decimals="-3">237000</us-gaap:AmortizationOfIntangibleAssets>
  <!--Amortization expense-->
  <us-gaap:AmortizationOfIntangibleAssets contextRef="c20160101to20161231" unitRef="U001" decimals="-3">343000</us-gaap:AmortizationOfIntangibleAssets>
  <!--Amortization expense-->
  <us-gaap:AmortizationOfIntangibleAssets contextRef="c20150101to20151231" unitRef="U001" decimals="-3">454000</us-gaap:AmortizationOfIntangibleAssets>
  <!--Anti-dilutive securities excluded from computation of earnings per dilutive share (in shares)-->
  <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c20170101to20171231" unitRef="U002" decimals="-3">341000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
  <!--Anti-dilutive securities excluded from computation of earnings per dilutive share (in shares)-->
  <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c20150101to20151231" unitRef="U002" decimals="-3">831000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
  <!--Assets-->
  <us-gaap:Assets contextRef="c20171231" unitRef="U001" decimals="-3">33950000</us-gaap:Assets>
  <!--Assets-->
  <us-gaap:Assets contextRef="c20161231" unitRef="U001" decimals="-3">32042000</us-gaap:Assets>
  <!--Assets, Noncurrent-->
  <us-gaap:AssetsNoncurrent contextRef="c20171231" unitRef="U001" decimals="-3">7589000</us-gaap:AssetsNoncurrent>
  <!--Assets, Noncurrent-->
  <us-gaap:AssetsNoncurrent contextRef="c20161231" unitRef="U001" decimals="-3">8875000</us-gaap:AssetsNoncurrent>
  <!--Assets, Current-->
  <us-gaap:AssetsCurrent contextRef="c20171231" unitRef="U001" decimals="-3">26361000</us-gaap:AssetsCurrent>
  <!--Assets, Current-->
  <us-gaap:AssetsCurrent contextRef="c20161231" unitRef="U001" decimals="-3">23167000</us-gaap:AssetsCurrent>
  <!--Accounting policies-->
  <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;2. Summary of significant accounting policies&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Principles of consolidation:&lt;/font&gt;&amp;#160;&amp;#160;The accompanying Consolidated Financial Statements include the accounts of TransAct and its wholly-owned subsidiaries, which require consolidation, after the elimination of intercompany accounts, transactions and unrealized profit.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Use of estimates&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/font&gt;&amp;#160;&amp;#160;The preparations of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America ("GAAP") requires management to make estimates and assumptions that affect the reported amounts of assets, liabilities, revenue and expenses, and disclosure of contingent assets and liabilities as of the date of the Consolidated Financial Statements and the reported amounts of sales and expenses during the reporting period. Actual results could differ from those estimates.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Segment reporting&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;: &lt;/font&gt;We apply the provisions of the Financial Accounting Standards Board ("FASB") Accounting Standards Codification ("ASC") 280, "Segment Reporting."&amp;#160;&amp;#160;We view our operations and manage our business as one segment: the design, development and marketing of software-driven technology and printing solutions and providing printer and terminal related software, services, supplies and spare parts.&amp;#160;&amp;#160;Factors used to identify TransAct's single operating segment include the organizational structure of the Company and the financial information available for evaluation by the chief operating decision-maker in making decisions about how to allocate resources and assess performance.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Cash and cash equivalents&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/font&gt;&amp;#160;&amp;#160;We consider all highly liquid investments with a maturity date of three months or less at date of purchase to be cash equivalents.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Allowance for doubtful accounts&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/font&gt;&amp;#160;&amp;#160;We establish an allowance for doubtful accounts to ensure trade receivables are valued appropriately. We maintain an allowance for doubtful accounts based on a variety of factors, including the length of time receivables are past due, significant one-time events and historical experience.&amp;#160;&amp;#160;We record a specific allowance for individual accounts when we become aware of a customer's inability to meet its financial obligations, such as in the case of bankruptcy filings or deterioration in the customer's operating results or financial position.&amp;#160;&amp;#160;If circumstances related to customers change, we would further adjust estimates of the recoverability of receivables.&amp;#160;&amp;#160;Allowances for doubtful accounts on accounts receivable balances were $100,000 and $50,000 as of December 31, 2017 and 2016, respectively.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The following table summarizes the activity recorded in the valuation account for accounts receivable:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, beginning of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;100&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Additions charged to costs and expenses&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Write-offs&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(57&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, end of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;100&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Inventories:&lt;/font&gt;&amp;#160;&amp;#160;Inventories are stated at the lower of cost (principally standard cost, which approximates actual cost on a first-in, first-out basis) or net realizable value.&amp;#160;&amp;#160;We review net realizable value based on estimated selling prices in the ordinary course of business less estimated costs of completions, disposal and transportation, historical usage and estimates of future demand.&amp;#160;&amp;#160;Based on these reviews, inventory write-downs are recorded, as necessary, to reflect estimated obsolescence, excess quantities and net realizable value.&amp;#160;&amp;#160;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Fixed assets:&lt;/font&gt;&amp;#160;&amp;#160;Fixed assets are stated at cost.&amp;#160;&amp;#160;Depreciation is recorded using the straight-line method over the estimated useful lives.&amp;#160;&amp;#160;The estimated useful life of tooling is five years; machinery and equipment is ten years; furniture and office equipment is five to ten years; and computer software and equipment is three to seven years.&amp;#160;&amp;#160;Leasehold improvements are amortized over the shorter of the term of the lease or the useful life of the asset.&amp;#160;&amp;#160;Costs related to repairs and maintenance are expensed as incurred.&amp;#160;&amp;#160;The costs of sold or retired assets are removed from the related asset and accumulated depreciation accounts and any gain or loss is recognized.&amp;#160;&amp;#160;Depreciation expense was $844,000, $987,000 and $972,000 in 2017, 2016, and 2015, respectively.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Leases:&lt;/font&gt;&amp;#160;&amp;#160;Rent expense under non-cancelable operating leases with scheduled rent increases or free rent periods are accounted for on a straight-line basis over the lease term, beginning on the date of control of physical use of the asset or of initial possession.&amp;#160;&amp;#160;The amount of the excess of straight-line rent expense over scheduled payments is recorded as a deferred liability.&amp;#160;&amp;#160;Construction allowances and other such lease incentives are recorded as deferred credits, and are amortized on a straight-line basis as a reduction of rent expense beginning in the period they are deemed to be earned, which generally coincides with the occupancy date.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Goodwill and Intangible assets&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/font&gt;&amp;#160;We acquire businesses in purchase transactions that result in the recognition of goodwill and intangible assets. The determination of the value of intangible assets requires management to make estimates and assumptions. In accordance with ASC 350-20 "Goodwill", acquired goodwill is not amortized but is subject to impairment testing at least annually and when an event occurs or circumstances change, that indicate it is more likely than not an impairment exists. Factors considered that may trigger an impairment review of either acquired goodwill or intangible assets are: significant underperformance relative to expected historical or projected future operating results; significant changes in the manner of use of acquired assets or the strategy for the overall business; significant negative industry or economic trends; and significant decline in market capitalization relative to net book value. Finite lived intangible assets are amortized and are tested for impairment when appropriate. We have determined that no goodwill or intangible asset impairment has occurred and the fair value of goodwill was substantially higher than our carrying value based on our assessment as of December 31, 2017 when the impairment review is performed.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Revenue recognition:&lt;/font&gt;&amp;#160;Our typical contracts include the sale of printers and terminals, which are sometimes accompanied by separately-priced extended warranty and technical support contracts.&amp;#160;&amp;#160;We also sell replacement parts, consumables, and other repair services (sometimes pursuant to multi-year product maintenance contracts), which are not included in the original printer or terminal sale and are ordered by the customer as needed.&amp;#160;&amp;#160;We recognize revenue pursuant to the guidance within ASC 605, "Revenue Recognition" (ASC 605).&amp;#160;&amp;#160;Specifically, revenue is recognized when evidence of an arrangement exists, delivery (based on shipping terms, which are generally FOB shipping point) has occurred, the selling price is fixed or determinable, and collectability is reasonably assured.&amp;#160;&amp;#160;We recognize revenue from the sale of printers and terminals to our distributors and resellers on a sell-in basis and on substantially the same terms as we recognize revenue from all our other customers.&amp;#160;&amp;#160;We provide for an estimate of product returns and price protection based on historical experience at the time of revenue recognition.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;We also sell a software solution, EPICENTRAL&amp;#8482;, that enables casino operators to create promotional coupons and marketing messages and to print them in real-time at the slot machine.&amp;#160;&amp;#160;Revenue arrangements for EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; include multiple deliverables and as a result such arrangements are accounted for in accordance with both ASC 605-25, "Multiple-Element Arrangements" and ASC 985-605, "Software."&amp;#160;&amp;#160;EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; is primarily comprised of both a software component, which is licensed to the customer, and a hardware component.&amp;#160;&amp;#160;EPICENTRAL&amp;#8482; contains both software and hardware that are integrated to deliver the system's full functionality.&amp;#160;&amp;#160;These arrangements are accounted for in accordance with ASC 605-25, "Multiple-Element Arrangements".&amp;#160;&amp;#160;EPICENTRAL&amp;#8482; can also include an additional software offering, Mobile Host, that allows the customer to access certain applications on mobile devices.&amp;#160;&amp;#160;Mobile Host is accounted for in accordance with ASC 985-605, "Software" as Mobile Host software does not function together with the hardware device to deliver its essential functionality.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Revenue, inclusive of software license fees, is generally recognized upon installation and formal acceptance by the customer with the exception of any amount allocated to free maintenance which is deferred and recognized over the initial maintenance period, generally one year.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;For EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; and other multiple deliverable arrangements, we consider whether the&amp;#160;deliverables in an arrangement are within the scope of existing higher-level GAAP and apply such literature to the extent that it provides guidance regarding whether to separate multiple-deliverable arrangements and how to allocate value among those separate units of accounting. &amp;#160;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;&amp;#160;&lt;/font&gt;When we enter into a multiple deliverable arrangement, we also determine whether revenue arrangements consist of more than one unit of accounting.&amp;#160;&amp;#160;At that time, we allocate arrangement consideration to the separate units of accounting based on a relative selling price hierarchy, except where amounts allocable to the delivered units is limited to that which is contingent upon the delivery of additional deliverables or meeting other specified performance conditions. The relative selling price for each element is based upon the following selling price hierarchy: vendor specific objective evidence ("VSOE") if available, third party evidence ("TPE") if VSOE is not available, or best estimate of selling price ("BESP") to the extent that VSOE or TPE are not available.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Revenue related to extended warranty and product maintenance contracts is recognized pursuant to ASC 605-20-25, "Separately Priced Extended Warranty and Product Maintenance Contracts."&amp;#160;&amp;#160;Pursuant to this provision, revenue related to separately priced product maintenance contracts is deferred and recognized over the term of the maintenance period.&amp;#160;&amp;#160;We record deferred revenue for advance payments received from customers for maintenance contracts.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Our customers have the right to return products that do not function properly within a limited time after delivery.&amp;#160;&amp;#160;We monitor and track product returns and record a provision for the estimated future returns based on historical experience.&amp;#160;&amp;#160;Returns have historically been within expectations and the provisions established.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We offer some of our customers price protection as an incentive to carry inventory of our product.&amp;#160;&amp;#160;These price protection plans provide that if we lower prices, we will credit them for the price decrease on inventory they hold.&amp;#160;&amp;#160;Our customers typically carry limited amounts of inventory, and we infrequently lower prices on current products.&amp;#160;&amp;#160;As a result, the amounts paid under these plans have not been material.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We charge our customers for shipping and handling services.&amp;#160;&amp;#160;The amounts billed to customers are recorded as revenue when the product ships.&amp;#160;&amp;#160;Any costs incurred related to these services are included in cost of sales.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Concentration of credit risk:&lt;/font&gt;&amp;#160;&amp;#160;Financial instruments that potentially expose us to concentrations of credit risk are limited to cash and cash equivalents held by our banks in excess of insured limits and accounts receivable.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Accounts receivable from customers representing 10% or more of total accounts receivable were as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;International Gaming Technology ("IGT")&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;48&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;34&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Suzo-Happ&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;18&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Sales to customers representing 10% or more of total net sales were as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;IGT&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;35&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;26&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;29&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Suzo-Happ&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;15&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;14&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Warranty:&lt;/font&gt;&amp;#160;&amp;#160;We generally warrant our products for up to 36 months and record the estimated cost of such product warranties at the time the sale is recorded.&amp;#160;&amp;#160;Estimated warranty costs are based upon actual past experience of product repairs and the related estimated cost of labor and material to make the necessary repairs.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The following table summarizes the activity recorded in the accrued product warranty liability:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, beginning of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;277&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;287&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Warranties issued&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;259&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;254&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Warranty settlements&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(259&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(264&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(277&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, end of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;277&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;$186,000 and $169,000 of the accrued product warranty liability were classified as current in Accrued liabilities at December 31, 2017 and 2016, respectively.&amp;#160;&amp;#160;The remaining $81,000 and $98,000 of the accrued product warranty liability is classified as long-term in Other liabilities.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Engineering, design and product development:&lt;/font&gt;&amp;#160;&amp;#160;Research and development ("R&amp;amp;D") expenses include expenses incurred in connection with specialized engineering and design to introduce new products and to customize existing products, and are expensed as a component of operating expenses as incurred.&amp;#160;&amp;#160;We recorded $4,303,000, $4,425,000 and $3,599,000 of research and development expenses in 2017, 2016, and 2015, respectively.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Costs incurred in researching and developing a computer software product are charged to expense until technological feasibility has been established at which point all material software costs are capitalized within Intangible assets in our Consolidated Balance Sheet until the product is available for general release to customers.&amp;#160;&amp;#160;While judgment is required in determining when technological feasibility of a product is established, we have determined that it is reached after all high-risk development issues have been documented in a formal detailed plan design.&amp;#160;&amp;#160;The amortization of these costs have been included in cost of sales over the estimated life of the product.&amp;#160;&amp;#160;During 2010, we began the development of EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; and unamortized development costs for such software were $0 and $2,000 as of December 31, 2017 and 2016, respectively.&amp;#160;&amp;#160;The total amount charged to cost of sales for the amortization of capitalized software development costs was $2,000, $29,000 and $138,000 in 2017, 2016, and 2015, respectively.&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Advertising:&lt;/font&gt;&amp;#160;&amp;#160;Advertising costs are expensed as incurred.&amp;#160;&amp;#160;Advertising expenses, which are included in selling and marketing expense on the accompanying Consolidated Statements of Income, for 2017, 2016, and 2015 totaled $974,000, $703,000 and $858,000, respectively. These expenses include items such as consulting and professional services, tradeshows, and print advertising.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Income taxes:&lt;/font&gt;&amp;#160;&amp;#160;The income tax amounts reflected in the accompanying Consolidated Financial Statements are accounted for under the liability method in accordance with ASC 740, "Income Taxes."&amp;#160;&amp;#160;Deferred tax assets and liabilities are recognized for the estimated future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards.&amp;#160;&amp;#160;Deferred tax assets and liabilities are measured using enacted tax rates in effect for the year in which those temporary differences are expected to be recovered or settled.&amp;#160;&amp;#160;We assess the likelihood that net deferred tax assets will be realized from future taxable income, and to the extent that we believe that realization is not likely, we establish a valuation allowance.&amp;#160;&amp;#160;In accordance with ASC 740, we identified, evaluated and measured the amount of benefits to be recognized for our tax return positions.&amp;#160;&amp;#160;See Note 11 for information regarding our accounting for income taxes and additional provision items recorded in regards to the Tax Cuts and Jobs Act (the "Tax Reform Act").&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Foreign currency translation:&lt;/font&gt;&amp;#160;&amp;#160;The financial position and results of operations of our foreign subsidiary in the United Kingdom are measured using local currency as the functional currency.&amp;#160;&amp;#160;Assets and liabilities of such subsidiary have been translated into U.S. dollars at the year-end exchange rate, related sales and expenses have been translated at the average exchange rate for the year, and shareholders' equity has been translated at historical exchange rates.&amp;#160;&amp;#160;The resulting translation gains or losses, net of tax, are recorded in shareholders' equity as a cumulative translation adjustment, which is a component of accumulated other comprehensive income.&amp;#160;&amp;#160;Foreign currency transaction gains and losses, including those related to intercompany balances, are recognized in Other, net on the Consolidated Statements of Income.&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Share-based payments:&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;&amp;#160;&lt;/font&gt;At December 31, 2017, we have share-based employee compensation plans, which are described more fully in Note 10 - Stock incentive plans.&amp;#160;&amp;#160;We account for those plans under the recognition and measurement principles of ASC 718, "Compensation &amp;#8211; Stock Compensation."&amp;#160;&amp;#160;Share-based compensation expense is measured at the grant date, based on the estimated fair value of the award, and is recognized as expense over the employee's requisite service period.&amp;#160;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We use the Black-Scholes option-pricing model to calculate the fair value of share based awards.&amp;#160;&amp;#160;The key assumptions for this valuation method include the expected term of the option, stock price volatility, risk-free interest rate, dividend yield, market price of our underlying stock and exercise price.&amp;#160;&amp;#160;Many of these assumptions are judgmental and highly sensitive in the determination of compensation expense.&amp;#160;&amp;#160;Beginning in the first quarter of 2017, we recognize forfeitures as they occur.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Net income and loss per share:&lt;/font&gt;&amp;#160;&amp;#160;We report net income or loss per share in accordance with ASC 260, "Earnings per Share (EPS)." Under this guidance, basic EPS, which excludes dilution, is computed by dividing income or loss available to common shareholders by the weighted average number of common shares outstanding for the period.&amp;#160;&amp;#160;Diluted EPS reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock.&amp;#160;&amp;#160;Diluted EPS includes in-the-money stock options using the treasury stock method.&amp;#160;&amp;#160;During a loss period, the assumed exercise of in-the-money stock options has an anti-dilutive effect, and therefore, these instruments are excluded from the computation of dilutive EPS.&amp;#160;&amp;#160;See Note 12 - Earnings per share.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
  <!--Non-cash capital expenditure items-->
  <us-gaap:CapitalExpendituresIncurredButNotYetPaid contextRef="c20150101to20151231" unitRef="U001" decimals="-3">84000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
  <!--Non-cash capital expenditure items-->
  <us-gaap:CapitalExpendituresIncurredButNotYetPaid contextRef="c20160101to20161231" unitRef="U001" decimals="-3">113000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
  <!--Non-cash capital expenditure items-->
  <us-gaap:CapitalExpendituresIncurredButNotYetPaid contextRef="c20170101to20171231" unitRef="U001" decimals="-3">44000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
  <!--Capitalized Computer Software, Amortization-->
  <us-gaap:CapitalizedComputerSoftwareAmortization1 contextRef="c20160101to20161231" unitRef="U001" decimals="-3">29000</us-gaap:CapitalizedComputerSoftwareAmortization1>
  <!--Capitalized Computer Software, Amortization-->
  <us-gaap:CapitalizedComputerSoftwareAmortization1 contextRef="c20150101to20151231" unitRef="U001" decimals="-3">138000</us-gaap:CapitalizedComputerSoftwareAmortization1>
  <!--Capitalized Computer Software, Amortization-->
  <us-gaap:CapitalizedComputerSoftwareAmortization1 contextRef="c20170101to20171231" unitRef="U001" decimals="-3">2000</us-gaap:CapitalizedComputerSoftwareAmortization1>
  <!--Unamortized development costs of software-->
  <us-gaap:CapitalizedComputerSoftwareNet contextRef="c20171231" unitRef="U001" decimals="-3">0</us-gaap:CapitalizedComputerSoftwareNet>
  <!--Unamortized development costs of software-->
  <us-gaap:CapitalizedComputerSoftwareNet contextRef="c20161231" unitRef="U001" decimals="-3">2000</us-gaap:CapitalizedComputerSoftwareNet>
  <!--Cash and Cash Equivalents, Policy [Policy Text Block]-->
  <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Cash and cash equivalents&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/font&gt;&amp;#160;&amp;#160;We consider all highly liquid investments with a maturity date of three months or less at date of purchase to be cash equivalents.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
  <!--Cash and cash equivalents-->
  <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c20161231" unitRef="U001" decimals="-3">2503000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
  <!--Cash and cash equivalents-->
  <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c20171231" unitRef="U001" decimals="-3">5507000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
  <!--Cash and cash equivalents-->
  <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c20151231" unitRef="U001" decimals="-3">4473000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
  <!--Cash and cash equivalents-->
  <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c20141231" unitRef="U001" decimals="-3">3131000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
  <!--Cash and Cash Equivalents, Period Increase (Decrease)-->
  <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-1970000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
  <!--Cash and Cash Equivalents, Period Increase (Decrease)-->
  <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease contextRef="c20170101to20171231" unitRef="U001" decimals="-3">3004000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
  <!--Cash and Cash Equivalents, Period Increase (Decrease)-->
  <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease contextRef="c20150101to20151231" unitRef="U001" decimals="-3">1342000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
  <!--Commitments and Contingencies Disclosure [Text Block]-->
  <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;9. Commitments and contingencies&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;On June 8, 2012, Avery Dennison Corporation ("AD") filed a civil complaint against us and a former employee of ours and of AD, in the Court of Common Pleas (the "Court") in Lake County, Ohio.&amp;#160; The complaint alleged that we and this former employee misappropriated unspecified trade secrets and confidential information from AD related to the design of our restaurant solutions terminals.&amp;#160; The complaint requested a preliminary and permanent injunction against us from manufacturing and selling our Ithaca&amp;#174; 9700 and 9800 restaurant solutions terminals.&amp;#160; After more than two years of legal proceedings, on March 25, 2015 the parties executed a confidential settlement agreement and release (the "Settlement Agreement") in which the parties mutually agreed to resolve the dispute&amp;#160; to the parties' mutual satisfaction.&amp;#160;&amp;#160;Under the terms of the Settlement Agreement, we agreed to pay AD $3,600,000 payable on or before April 8, 2015 and also to qualify certain AD labels for use on our restaurant solutions terminals at an estimated cost of $25,000.&amp;#160;&amp;#160; We recorded the total expense of $3,625,000 in the fourth quarter 2014 as an operating expense included in the line item "Legal fees and settlement expenses associated with lawsuit" on the Consolidated Statement of Operations and as a current liability included in the line item "Accrued lawsuit settlement expenses" on the Consolidated Balance Sheet.&amp;#160;&amp;#160;In the second quarter of 2015 we reversed $25,000 of this expense because AD did not provide the label testing information by the due date required per the settlement agreement.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;At December 31, 2017, we were the lessee on operating leases for equipment and real property.&amp;#160;&amp;#160;Rent expense was $1,142,000, $1,046,000 and $932,000 in 2017, 2016, and 2015, respectively.&amp;#160;&amp;#160;Minimum aggregate rental payments required under operating leases that have initial or remaining non-cancelable lease terms in excess of one year as of December 31, 2017 are as follows: $1,000,000 in 2018; $1,015,000 in 2019; $1,014,000 in 2020; $692,000 in 2021, $429,000 in 2022 and $1,155,000 thereafter.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
  <!--Common stock, shares authorized (in shares)-->
  <us-gaap:CommonStockSharesAuthorized contextRef="c20161231" unitRef="U002" decimals="INF">20000000</us-gaap:CommonStockSharesAuthorized>
  <!--Common stock, shares authorized (in shares)-->
  <us-gaap:CommonStockSharesAuthorized contextRef="c20171231" unitRef="U002" decimals="INF">20000000</us-gaap:CommonStockSharesAuthorized>
  <!--Common stock, shares issued (in shares)-->
  <us-gaap:CommonStockSharesIssued contextRef="c20171231" unitRef="U002" decimals="INF">11366526</us-gaap:CommonStockSharesIssued>
  <!--Common stock, shares issued (in shares)-->
  <us-gaap:CommonStockSharesIssued contextRef="c20161231" unitRef="U002" decimals="INF">11185331</us-gaap:CommonStockSharesIssued>
  <!--Common stock, shares issued (in shares)-Common Stock [Member]-->
  <us-gaap:CommonStockSharesIssued contextRef="c20141231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">7900257</us-gaap:CommonStockSharesIssued>
  <!--Common stock, shares issued (in shares)-Common Stock [Member]-->
  <us-gaap:CommonStockSharesIssued contextRef="c20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">7782292</us-gaap:CommonStockSharesIssued>
  <!--Common stock, shares issued (in shares)-Common Stock [Member]-->
  <us-gaap:CommonStockSharesIssued contextRef="c20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">7333364</us-gaap:CommonStockSharesIssued>
  <!--Common stock, shares issued (in shares)-Common Stock [Member]-->
  <us-gaap:CommonStockSharesIssued contextRef="c20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">7478094</us-gaap:CommonStockSharesIssued>
  <!--Dividends declared and paid per common share (in dollars per share)-->
  <us-gaap:CommonStockDividendsPerShareCashPaid contextRef="c20160101to20161231" unitRef="U003" decimals="INF">0.32</us-gaap:CommonStockDividendsPerShareCashPaid>
  <!--Dividends declared and paid per common share (in dollars per share)-->
  <us-gaap:CommonStockDividendsPerShareCashPaid contextRef="c20170101to20171231" unitRef="U003" decimals="INF">0.35</us-gaap:CommonStockDividendsPerShareCashPaid>
  <!--Dividends declared and paid per common share (in dollars per share)-->
  <us-gaap:CommonStockDividendsPerShareCashPaid contextRef="c20150101to20151231" unitRef="U003" decimals="INF">0.32</us-gaap:CommonStockDividendsPerShareCashPaid>
  <!--Common stock, par value (in dollars per share)-->
  <us-gaap:CommonStockParOrStatedValuePerShare contextRef="c20171231" unitRef="U003" decimals="INF">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
  <!--Common stock, par value (in dollars per share)-->
  <us-gaap:CommonStockParOrStatedValuePerShare contextRef="c20161231" unitRef="U003" decimals="INF">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
  <!--Common Stock, Value, Issued-->
  <us-gaap:CommonStockValue contextRef="c20161231" unitRef="U001" decimals="-3">112000</us-gaap:CommonStockValue>
  <!--Common Stock, Value, Issued-->
  <us-gaap:CommonStockValue contextRef="c20171231" unitRef="U001" decimals="-3">114000</us-gaap:CommonStockValue>
  <!--Common stock, shares outstanding (in shares)-->
  <us-gaap:CommonStockSharesOutstanding contextRef="c20161231" unitRef="U002" decimals="INF">7333364</us-gaap:CommonStockSharesOutstanding>
  <!--Common stock, shares outstanding (in shares)-->
  <us-gaap:CommonStockSharesOutstanding contextRef="c20171231" unitRef="U002" decimals="INF">7478094</us-gaap:CommonStockSharesOutstanding>
  <!--Retirement savings plan-->
  <us-gaap:CompensationAndEmployeeBenefitPlansTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;7. Retirement savings plan&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We maintain a 401(k) plan under which all full-time employees are eligible to participate at the beginning of each month immediately following their date of hire.&amp;#160;&amp;#160;We match employees' contributions at a rate of 50% of employees' contributions up to the first 6% of the employees' compensation contributed to the 401(k) plan.&amp;#160;&amp;#160;Our matching contributions were $264,000, $295,000 and $197,000 in 2017, 2016, and 2015, respectively.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:CompensationAndEmployeeBenefitPlansTextBlock>
  <!--Comprehensive Income (Loss), Net of Tax, Attributable to Parent-->
  <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c20150101to20151231" unitRef="U001" decimals="-3">3084000</us-gaap:ComprehensiveIncomeNetOfTax>
  <!--Comprehensive Income (Loss), Net of Tax, Attributable to Parent-->
  <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c20170101to20171231" unitRef="U001" decimals="-3">3221000</us-gaap:ComprehensiveIncomeNetOfTax>
  <!--Comprehensive Income (Loss), Net of Tax, Attributable to Parent-->
  <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c20160101to20161231" unitRef="U001" decimals="-3">3588000</us-gaap:ComprehensiveIncomeNetOfTax>
  <!--Concentration of credit risk-->
  <us-gaap:ConcentrationRiskCreditRisk contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Concentration of credit risk:&lt;/font&gt;&amp;#160;&amp;#160;Financial instruments that potentially expose us to concentrations of credit risk are limited to cash and cash equivalents held by our banks in excess of insured limits and accounts receivable.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Accounts receivable from customers representing 10% or more of total accounts receivable were as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;International Gaming Technology ("IGT")&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;48&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;34&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Suzo-Happ&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;18&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Sales to customers representing 10% or more of total net sales were as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;IGT&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;35&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;26&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;29&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Suzo-Happ&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;15&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;14&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ConcentrationRiskCreditRisk>
  <!--Concentration Risk, Percentage-Sales [Member]-Suzo Happ [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20170101to20171231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_SuzoHappMember" unitRef="U005" decimals="2">0.08</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Sales [Member]-IGT [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20150101to20151231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_IGTMember" unitRef="U005" decimals="2">0.29</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Accounts Receivable [Member]-Suzo Happ [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20160101to20161231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_MajorCustomersAxis_SuzoHappMember" unitRef="U005" decimals="2">0.18</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Suzo Happ [Member]-Accounts Receivable [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20170101to20171231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_MajorCustomersAxis_SuzoHappMember" unitRef="U005" decimals="2">0.13</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-IGT [Member]-Sales [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20160101to20161231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_IGTMember" unitRef="U005" decimals="2">0.26</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-IGT [Member]-Accounts Receivable [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20160101to20161231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_MajorCustomersAxis_IGTMember" unitRef="U005" decimals="2">0.34</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-IGT [Member]-Accounts Receivable [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20170101to20171231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_MajorCustomersAxis_IGTMember" unitRef="U005" decimals="2">0.48</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Suzo Happ [Member]-Sales [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20150101to20151231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_SuzoHappMember" unitRef="U005" decimals="2">0.14</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Suzo Happ [Member]-Sales [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20160101to20161231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_SuzoHappMember" unitRef="U005" decimals="2">0.15</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-IGT [Member]-Sales [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20170101to20171231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_MajorCustomersAxis_IGTMember" unitRef="U005" decimals="2">0.35</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Europe [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20170101to20171231_StatementGeographicalAxis_EuropeMember" unitRef="U005" decimals="2">0.44</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Pacific Rim [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20160101to20161231_StatementGeographicalAxis_PacificRimMember" unitRef="U005" decimals="2">0.34</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Pacific Rim [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20150101to20151231_StatementGeographicalAxis_PacificRimMember" unitRef="U005" decimals="2">0.34</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Pacific Rim [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20170101to20171231_StatementGeographicalAxis_PacificRimMember" unitRef="U005" decimals="2">0.32</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-CANADA-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20150101to20151231_StatementGeographicalAxis_CA" unitRef="U005" decimals="2">0.08</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-International [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20160101to20161231_StatementGeographicalAxis_InternationalMember" unitRef="U005" decimals="1">0.2</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-International [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20150101to20151231_StatementGeographicalAxis_InternationalMember" unitRef="U005" decimals="2">0.23</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-International [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20170101to20171231_StatementGeographicalAxis_InternationalMember" unitRef="U005" decimals="2">0.14</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Europe [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20160101to20161231_StatementGeographicalAxis_EuropeMember" unitRef="U005" decimals="2">0.56</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-Europe [Member]-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20150101to20151231_StatementGeographicalAxis_EuropeMember" unitRef="U005" decimals="2">0.56</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-CANADA-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20170101to20171231_StatementGeographicalAxis_CA" unitRef="U005" decimals="2">0.18</us-gaap:ConcentrationRiskPercentage1>
  <!--Concentration Risk, Percentage-CANADA-->
  <us-gaap:ConcentrationRiskPercentage1 contextRef="c20160101to20161231_StatementGeographicalAxis_CA" unitRef="U005" decimals="2">0.08</us-gaap:ConcentrationRiskPercentage1>
  <!--Principles of consolidation-->
  <us-gaap:ConsolidationPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Principles of consolidation:&lt;/font&gt;&amp;#160;&amp;#160;The accompanying Consolidated Financial Statements include the accounts of TransAct and its wholly-owned subsidiaries, which require consolidation, after the elimination of intercompany accounts, transactions and unrealized profit.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ConsolidationPolicyTextBlock>
  <!--Cost of sales-->
  <us-gaap:CostOfGoodsSold contextRef="c20150101to20151231" unitRef="U001" decimals="-3">34698000</us-gaap:CostOfGoodsSold>
  <!--Cost of sales-->
  <us-gaap:CostOfGoodsSold contextRef="c20170101to20171231" unitRef="U001" decimals="-3">29649000</us-gaap:CostOfGoodsSold>
  <!--Cost of sales-->
  <us-gaap:CostOfGoodsSold contextRef="c20160101to20161231" unitRef="U001" decimals="-3">33436000</us-gaap:CostOfGoodsSold>
  <!--Current Income Tax Expense (Benefit)-->
  <us-gaap:CurrentIncomeTaxExpenseBenefit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">472000</us-gaap:CurrentIncomeTaxExpenseBenefit>
  <!--Current Income Tax Expense (Benefit)-->
  <us-gaap:CurrentIncomeTaxExpenseBenefit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">2444000</us-gaap:CurrentIncomeTaxExpenseBenefit>
  <!--Current Income Tax Expense (Benefit)-->
  <us-gaap:CurrentIncomeTaxExpenseBenefit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">1848000</us-gaap:CurrentIncomeTaxExpenseBenefit>
  <!--Current State and Local Tax Expense (Benefit)-->
  <us-gaap:CurrentStateAndLocalTaxExpenseBenefit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">114000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
  <!--Current State and Local Tax Expense (Benefit)-->
  <us-gaap:CurrentStateAndLocalTaxExpenseBenefit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">22000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
  <!--Current State and Local Tax Expense (Benefit)-->
  <us-gaap:CurrentStateAndLocalTaxExpenseBenefit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">70000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
  <!--Current Foreign Tax Expense (Benefit)-->
  <us-gaap:CurrentForeignTaxExpenseBenefit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">2000</us-gaap:CurrentForeignTaxExpenseBenefit>
  <!--Current Foreign Tax Expense (Benefit)-->
  <us-gaap:CurrentForeignTaxExpenseBenefit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">0</us-gaap:CurrentForeignTaxExpenseBenefit>
  <!--Current Foreign Tax Expense (Benefit)-->
  <us-gaap:CurrentForeignTaxExpenseBenefit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-49000</us-gaap:CurrentForeignTaxExpenseBenefit>
  <!--Current Federal Tax Expense (Benefit)-->
  <us-gaap:CurrentFederalTaxExpenseBenefit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">1776000</us-gaap:CurrentFederalTaxExpenseBenefit>
  <!--Current Federal Tax Expense (Benefit)-->
  <us-gaap:CurrentFederalTaxExpenseBenefit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">2379000</us-gaap:CurrentFederalTaxExpenseBenefit>
  <!--Current Federal Tax Expense (Benefit)-->
  <us-gaap:CurrentFederalTaxExpenseBenefit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">450000</us-gaap:CurrentFederalTaxExpenseBenefit>
  <!--Basis spread on variable rate-TD Bank, N.A. [Member]-Revolving Credit Facility [Member]-Prime Rate [Member]-->
  <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c20170101to20171231_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember_VariableRateAxis_PrimeRateMember" unitRef="U005" decimals="2">0.01</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
  <!--Borrowings-->
  <us-gaap:DebtDisclosureTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;8. Borrowings&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We maintain a credit facility (the "TD Bank Credit Facility") with TD Bank N.A. ("TD Bank) which provides for a $20,000,000 revolving credit line.&amp;#160;&amp;#160;On November 21, 2017, we signed an amendment extending the term to the TD Bank Credit Facility through November 28, 2022.&amp;#160;&amp;#160;Borrowings under the revolving credit line bear a floating rate of interest at the prime rate minus one percent and are secured by a lien on all of our assets.&amp;#160;&amp;#160;We also pay a fee of 0.125% on unused borrowings under the revolving credit line.&amp;#160;&amp;#160;The amendment increased the amount of revolving credit loans we may use to fund future cash dividend payments or treasury share buybacks to $12,500,000 from $10,000,000.&amp;#160;&amp;#160;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The TD Bank Credit Facility imposes certain quarterly financial covenants on us and restricts, among other things, our ability to incur additional indebtedness and the creation of other liens. We were in compliance with all financial covenants of the TD Bank Credit Facility at December 31, 2017.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;As of December 31, 2017, undrawn commitments under the TD Bank Credit facility were $20,000,000.&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
  <!--Maturity date-TD Bank, N.A. [Member]-Revolving Credit Facility [Member]-->
  <us-gaap:DebtInstrumentMaturityDate contextRef="c20170101to20171231_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember">2022-11-28</us-gaap:DebtInstrumentMaturityDate>
  <!--Deferred Tax Expense from Stock Options Exercised-Treasury Stock [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Retained Earnings [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-AOCI Attributable to Parent [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20150101to20151231" unitRef="U001" decimals="-3">69000</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Additional Paid-in Capital [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">69000</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Common Stock [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20160101to20161231" unitRef="U001" decimals="-3">6000</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-AOCI Attributable to Parent [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Retained Earnings [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">31000</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Retained Earnings [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Treasury Stock [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Common Stock [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Additional Paid-in Capital [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">-31000</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Treasury Stock [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Common Stock [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-Additional Paid-in Capital [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">6000</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Tax Expense from Stock Options Exercised-AOCI Attributable to Parent [Member]-->
  <us-gaap:DeferredTaxExpenseFromStockOptionsExercised contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
  <!--Deferred Compensation Arrangement with Individual, Compensation Expense-Chief Executive Officer and Chief Financial Officer [Member]-Deferred Compensation, Share-based Payments [Member]-->
  <us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense contextRef="c20150101to20151231_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember" unitRef="U001" decimals="-3">121000</us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense>
  <!--Deferred Compensation Arrangement with Individual, Compensation Expense-Deferred Compensation, Share-based Payments [Member]-Chief Executive Officer and Chief Financial Officer [Member]-->
  <us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense contextRef="c20160101to20161231_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember" unitRef="U001" decimals="-3">151000</us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense>
  <!--Deferred Compensation Arrangement with Individual, Maximum Contractual Term-Deferred Compensation, Share-based Payments [Member]-Chief Executive Officer and Chief Financial Officer [Member]-->
  <us-gaap:DeferredCompensationArrangementWithIndividualMaximumContractualTerm1 contextRef="c20170101to20171231_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember">P3Y</us-gaap:DeferredCompensationArrangementWithIndividualMaximumContractualTerm1>
  <!--Deferred Compensation Arrangement with Individual, Exercise Price-Deferred Compensation, Share-based Payments [Member]-Chief Executive Officer and Chief Financial Officer [Member]-->
  <us-gaap:DeferredCompensationArrangementWithIndividualExercisePrice contextRef="c20170101to20171231_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember" unitRef="U003" decimals="2">6.98</us-gaap:DeferredCompensationArrangementWithIndividualExercisePrice>
  <!--Deferred Compensation Arrangement with Individual, Shares Issued-Chief Executive Officer and Chief Financial Officer [Member]-Deferred Compensation, Share-based Payments [Member]-->
  <us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued contextRef="c20140301to20140331_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember" unitRef="U002" decimals="0">28231</us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued>
  <!--Deferred Compensation Arrangement with Individual, Shares Issued-Deferred Compensation, Share-based Payments [Member]-Chief Executive Officer and Chief Financial Officer [Member]-->
  <us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued contextRef="c20130301to20130331_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_DeferredCompensationShareBasedPaymentsMember_TitleOfIndividualAxis_ChiefExecutiveOfficerAndChiefFinancialOfficerMember" unitRef="U002" decimals="0">23578</us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued>
  <!--Foreign-->
  <us-gaap:DeferredForeignIncomeTaxExpenseBenefit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
  <!--Foreign-->
  <us-gaap:DeferredForeignIncomeTaxExpenseBenefit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">0</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
  <!--Foreign-->
  <us-gaap:DeferredForeignIncomeTaxExpenseBenefit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">0</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
  <!--Federal-->
  <us-gaap:DeferredFederalIncomeTaxExpenseBenefit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">843000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
  <!--Federal-->
  <us-gaap:DeferredFederalIncomeTaxExpenseBenefit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-257000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
  <!--Federal-->
  <us-gaap:DeferredFederalIncomeTaxExpenseBenefit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">1097000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
  <!--Deferred income tax provision (benefit)-->
  <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">878000</us-gaap:DeferredIncomeTaxExpenseBenefit>
  <!--Deferred income tax provision (benefit)-->
  <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">1117000</us-gaap:DeferredIncomeTaxExpenseBenefit>
  <!--Deferred income tax provision (benefit)-->
  <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-295000</us-gaap:DeferredIncomeTaxExpenseBenefit>
  <!--Deferred revenue, net of current portion-->
  <us-gaap:DeferredRevenueNoncurrent contextRef="c20161231" unitRef="U001" decimals="-3">67000</us-gaap:DeferredRevenueNoncurrent>
  <!--Deferred revenue, net of current portion-->
  <us-gaap:DeferredRevenueNoncurrent contextRef="c20171231" unitRef="U001" decimals="-3">69000</us-gaap:DeferredRevenueNoncurrent>
  <!--Deferred revenue-->
  <us-gaap:DeferredRevenueCurrent contextRef="c20161231" unitRef="U001" decimals="-3">117000</us-gaap:DeferredRevenueCurrent>
  <!--Deferred revenue-->
  <us-gaap:DeferredRevenueCurrent contextRef="c20171231" unitRef="U001" decimals="-3">169000</us-gaap:DeferredRevenueCurrent>
  <!--Deferred rent, net of current portion-->
  <us-gaap:DeferredRentCredit contextRef="c20171231" unitRef="U001" decimals="-3">271000</us-gaap:DeferredRentCredit>
  <!--Deferred rent, net of current portion-->
  <us-gaap:DeferredRentCredit contextRef="c20161231" unitRef="U001" decimals="-3">178000</us-gaap:DeferredRentCredit>
  <!--State-->
  <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-38000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
  <!--State-->
  <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">35000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
  <!--State-->
  <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">20000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
  <!--Other liabilities and reserves-->
  <us-gaap:DeferredTaxAssetsOther contextRef="c20171231" unitRef="U001" decimals="-3">246000</us-gaap:DeferredTaxAssetsOther>
  <!--Other liabilities and reserves-->
  <us-gaap:DeferredTaxAssetsOther contextRef="c20161231" unitRef="U001" decimals="-3">329000</us-gaap:DeferredTaxAssetsOther>
  <!--Inventory reserves-->
  <us-gaap:DeferredTaxAssetsInventory contextRef="c20171231" unitRef="U001" decimals="-3">845000</us-gaap:DeferredTaxAssetsInventory>
  <!--Inventory reserves-->
  <us-gaap:DeferredTaxAssetsInventory contextRef="c20161231" unitRef="U001" decimals="-3">1264000</us-gaap:DeferredTaxAssetsInventory>
  <!--Deferred Tax Assets, Net-->
  <us-gaap:DeferredTaxAssetsLiabilitiesNet contextRef="c20171231" unitRef="U001" decimals="-3">2308000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
  <!--Deferred Tax Assets, Net-->
  <us-gaap:DeferredTaxAssetsLiabilitiesNet contextRef="c20161231" unitRef="U001" decimals="-3">3432000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
  <!--Deferred Tax Assets, Gross-->
  <us-gaap:DeferredTaxAssetsGross contextRef="c20171231" unitRef="U001" decimals="-3">2658000</us-gaap:DeferredTaxAssetsGross>
  <!--Deferred Tax Assets, Gross-->
  <us-gaap:DeferredTaxAssetsGross contextRef="c20161231" unitRef="U001" decimals="-3">3888000</us-gaap:DeferredTaxAssetsGross>
  <!--Deferred Tax Assets, Net of Valuation Allowance, Noncurrent-->
  <us-gaap:DeferredTaxAssetsNetNoncurrent contextRef="c20171231" unitRef="U001" decimals="-3">2308000</us-gaap:DeferredTaxAssetsNetNoncurrent>
  <!--Deferred Tax Assets, Net of Valuation Allowance, Noncurrent-->
  <us-gaap:DeferredTaxAssetsNetNoncurrent contextRef="c20161231" unitRef="U001" decimals="-3">3432000</us-gaap:DeferredTaxAssetsNetNoncurrent>
  <!--Deferred Tax Assets, Net of Valuation Allowance-->
  <us-gaap:DeferredTaxAssetsNet contextRef="c20161231" unitRef="U001" decimals="-3">3465000</us-gaap:DeferredTaxAssetsNet>
  <!--Deferred Tax Assets, Net of Valuation Allowance-->
  <us-gaap:DeferredTaxAssetsNet contextRef="c20171231" unitRef="U001" decimals="-3">2330000</us-gaap:DeferredTaxAssetsNet>
  <!--Deferred Tax Assets, Deferred Income-->
  <us-gaap:DeferredTaxAssetsDeferredIncome contextRef="c20161231" unitRef="U001" decimals="-3">31000</us-gaap:DeferredTaxAssetsDeferredIncome>
  <!--Deferred Tax Assets, Deferred Income-->
  <us-gaap:DeferredTaxAssetsDeferredIncome contextRef="c20171231" unitRef="U001" decimals="-3">16000</us-gaap:DeferredTaxAssetsDeferredIncome>
  <!--Foreign net operating losses-->
  <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign contextRef="c20171231" unitRef="U001" decimals="-3">328000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign>
  <!--Foreign net operating losses-->
  <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign contextRef="c20161231" unitRef="U001" decimals="-3">423000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign>
  <!--Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Legal Settlements-->
  <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLegalSettlements contextRef="c20161231" unitRef="U001" decimals="-3">88000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLegalSettlements>
  <!--Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Legal Settlements-->
  <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLegalSettlements contextRef="c20171231" unitRef="U001" decimals="-3">107000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLegalSettlements>
  <!--Other accrued compensation-->
  <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation contextRef="c20171231" unitRef="U001" decimals="-3">363000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation>
  <!--Other accrued compensation-->
  <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation contextRef="c20161231" unitRef="U001" decimals="-3">387000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation>
  <!--Warranty reserve-->
  <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves contextRef="c20161231" unitRef="U001" decimals="-3">93000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves>
  <!--Warranty reserve-->
  <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves contextRef="c20171231" unitRef="U001" decimals="-3">59000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves>
  <!--Deferred Tax Assets, Valuation Allowance-->
  <us-gaap:DeferredTaxAssetsValuationAllowance contextRef="c20171231" unitRef="U001" decimals="-3">328000</us-gaap:DeferredTaxAssetsValuationAllowance>
  <!--Deferred Tax Assets, Valuation Allowance-->
  <us-gaap:DeferredTaxAssetsValuationAllowance contextRef="c20161231" unitRef="U001" decimals="-3">423000</us-gaap:DeferredTaxAssetsValuationAllowance>
  <!--Stock compensation expense-->
  <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost contextRef="c20161231" unitRef="U001" decimals="-3">1273000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
  <!--Stock compensation expense-->
  <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost contextRef="c20171231" unitRef="U001" decimals="-3">694000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
  <!--Deferred Tax Liabilities, Net-->
  <us-gaap:DeferredTaxLiabilities contextRef="c20171231" unitRef="U001" decimals="-3">22000</us-gaap:DeferredTaxLiabilities>
  <!--Deferred Tax Liabilities, Net-->
  <us-gaap:DeferredTaxLiabilities contextRef="c20161231" unitRef="U001" decimals="-3">33000</us-gaap:DeferredTaxLiabilities>
  <!--Deferred Tax Liabilities, Other-->
  <us-gaap:DeferredTaxLiabilitiesOther contextRef="c20161231" unitRef="U001" decimals="-3">33000</us-gaap:DeferredTaxLiabilitiesOther>
  <!--Deferred Tax Liabilities, Other-->
  <us-gaap:DeferredTaxLiabilitiesOther contextRef="c20171231" unitRef="U001" decimals="-3">22000</us-gaap:DeferredTaxLiabilitiesOther>
  <!--Employee's contribution percentage for match-->
  <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent contextRef="c20170101to20171231" unitRef="U005" decimals="2">0.06</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
  <!--Employer matching contribution percentage-->
  <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch contextRef="c20170101to20171231" unitRef="U005" decimals="1">0.5</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
  <!--Amount of matching contribution-->
  <us-gaap:DefinedContributionPlanCostRecognized contextRef="c20150101to20151231" unitRef="U001" decimals="-3">197000</us-gaap:DefinedContributionPlanCostRecognized>
  <!--Amount of matching contribution-->
  <us-gaap:DefinedContributionPlanCostRecognized contextRef="c20160101to20161231" unitRef="U001" decimals="-3">295000</us-gaap:DefinedContributionPlanCostRecognized>
  <!--Amount of matching contribution-->
  <us-gaap:DefinedContributionPlanCostRecognized contextRef="c20170101to20171231" unitRef="U001" decimals="-3">264000</us-gaap:DefinedContributionPlanCostRecognized>
  <!--Depreciation, Depletion and Amortization, Nonproduction-->
  <us-gaap:DepreciationAndAmortization contextRef="c20170101to20171231" unitRef="U001" decimals="-3">1081000</us-gaap:DepreciationAndAmortization>
  <!--Depreciation, Depletion and Amortization, Nonproduction-->
  <us-gaap:DepreciationAndAmortization contextRef="c20150101to20151231" unitRef="U001" decimals="-3">1426000</us-gaap:DepreciationAndAmortization>
  <!--Depreciation, Depletion and Amortization, Nonproduction-->
  <us-gaap:DepreciationAndAmortization contextRef="c20160101to20161231" unitRef="U001" decimals="-3">1331000</us-gaap:DepreciationAndAmortization>
  <!--Depreciation expense-->
  <us-gaap:Depreciation contextRef="c20160101to20161231" unitRef="U001" decimals="-3">987000</us-gaap:Depreciation>
  <!--Depreciation expense-->
  <us-gaap:Depreciation contextRef="c20170101to20171231" unitRef="U001" decimals="-3">844000</us-gaap:Depreciation>
  <!--Depreciation expense-->
  <us-gaap:Depreciation contextRef="c20150101to20151231" unitRef="U001" decimals="-3">972000</us-gaap:Depreciation>
  <!--Stock incentive plans-->
  <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;10. Stock incentive plans&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Stock incentive plans&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;.&lt;/font&gt;&amp;#160;&amp;#160;We currently have two primary stock incentive plans: the 2005 Equity Incentive Plan and 2014 Equity Incentive Plan, which provide for awards to executives, key employees, directors and consultants.&amp;#160;&amp;#160;The plans generally provide for awards in the form of: (i) incentive stock options, (ii) non-qualified stock options, (iii) restricted stock, (iv) restricted stock units (which may include performance-based vesting), (v) stock appreciation rights or (vi) limited stock appreciation rights.&amp;#160;&amp;#160;Awards granted under these plans have exercise prices equal to 100% of the fair market value of the common stock at the date of grant.&amp;#160; Awards granted have a ten-year term and generally vest over a two- to five-year period, unless automatically accelerated for certain defined events.&amp;#160;&amp;#160;As of May 2014, no new awards will be made under the 2005 Equity Incentive Plan.&amp;#160;&amp;#160;Under our 2014 Equity Incentive Plan, we may authorize awards for up to 1,400,000 shares of TransAct common stock.&amp;#160;&amp;#160;At December 31, 2017, 665,991 shares of common stock remained available for issuance under the 2014 Equity Incentive Plan.&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Under the assumptions indicated below, the weighted-average per share fair value of stock option grants for 2017, 2016, and 2015 was $1.95, $1.70 and $6.73, respectively.&amp;#160;&amp;#160;In 2017 and 2016, we also issued restricted share units for certain executives and directors that vest over a specified period of time, and in some instances require achieving certain performance metrics.&amp;#160; The weighted-average per share fair value of these restricted share units was $7.53 and $7.31 in 2017 and 2016, respectively.&amp;#160; No restricted share units were issued in 2015.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The table below indicates the key assumptions used in the option valuation calculations for options granted in 2017, 2016, and 2015 and a discussion of our methodology for developing each of the assumptions used in the valuation model:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Expected option term (in years)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.9&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Expected volatility&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;36.2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;38.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Risk-free interest rate&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Dividend yield&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4.5&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4.7&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Expected Option Term&lt;/font&gt; - This is the weighted average period of time over which the options granted are expected to remain outstanding giving consideration to our historical exercise patterns.&amp;#160;&amp;#160;Options granted have a maximum term of ten years and an increase in the expected term will increase compensation expense.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Expected Volatility&lt;/font&gt; &amp;#8211; The stock volatility for each grant is measured using the weighted average of historical daily price changes of our common stock over the most recent period approximately equal to the expected option term of the grant.&amp;#160;&amp;#160;An increase in the expected volatility factor will increase compensation expense.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Risk-Free Interest Rate&lt;/font&gt; - This is the U.S. Treasury rate in effect at the time of grant having a term approximately equal to the expected term of the option.&amp;#160;&amp;#160;An increase in the risk-free interest rate will increase compensation expense.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Dividend Yield&lt;/font&gt; &amp;#8211;The dividend yield is calculated by dividing the annual dividend declared per common share by the weighted average market value of our common stock on the date of grant. An increase in the dividend yield will decrease compensation expense.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;For 2017, 2016, and 2015, we recorded $609,000, $611,000, and $488,000 of share-based compensation expense, respectively, included primarily in general and administrative expense in our Consolidated Statements of Income.&amp;#160;&amp;#160;We also recorded income tax benefits of $134,000, $184,000, and $148,000 in 2017, 2016, and 2015 respectively, related to such share-based compensation.&amp;#160;&amp;#160;At December 31, 2017, these benefits are recorded as a deferred tax asset in the Consolidated Balance Sheets.&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Option activity in the 2005 Equity Incentive Plan and 2014 Equity Incentive Plan is summarized below:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table border="0" cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="7" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Stock Options&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Restricted Share Units&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Number of Shares&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Average Price*&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Number of Units&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Average Price**&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Outstanding at December 31, 2016&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,073,900&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.83&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;57,400&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.94&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Granted&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;169,500&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;65,600&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Exercised&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(182,811&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.42&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(8,300&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.44&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Forfeited&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(80,763&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(13,425&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.98&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Expired&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(60,187&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; padding-bottom: 2px; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;9.32&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; padding-bottom: 2px; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Outstanding at December 31, 2017&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;919,639&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; padding-bottom: 4px; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;101,275&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; padding-bottom: 4px; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.21&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;*&amp;#160; &amp;#160; weighted-average exercise price per share&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;**&amp;#160; weighted-average grant stock price per share&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The following summarizes information about equity awards outstanding that are vested and expect to vest and equity awards that are exercisable at December 31, 2017:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="14" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Equity Awards Vested and Expected to Vest&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="14" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Equity Awards That Are Exercisable&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Awards&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Average Price*&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Aggregate Intrinsic Value&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Remaining Term**&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Awards&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Average Price*&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Aggregate Intrinsic Value&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Remaining Term**&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 20%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Stock Options&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;919,639&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4,709,000&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;483,224&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.29&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,396,000&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 20%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Restricted stock units&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;95,135&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,261,000&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 20%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="32" valign="bottom" style="vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;* weighted-average exercise price per share&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="32" valign="bottom" style="vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;** weighted-average contractual remaining term in years&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt;"&gt;Shares that are issued upon exercise of employee stock awards are newly issued shares and not issued from treasury stock.&amp;#160;&amp;#160;As of December 31, 2017, unrecognized compensation cost related to non-vested equity awards granted under our stock incentive plans is approximately $899,000, which is expected to be recognized over a weighted average period of 2.6 years&lt;/font&gt;.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The total fair value of awards vested during the years ended December 31, 2017, 2016, and 2015 was $1,104,000, $961,000, and $944,000, respectively.&amp;#160; The total intrinsic value (which is the amount by which the stock price exceeded the exercise price on the date of exercise) of stock options exercised during the years ended December 31, 2017, 2016, and 2015 was $958,000, $6,000 and $32,000, respectively.&amp;#160; Cash received from option exercises was $1,043,000, $23,000 and $263,000 for 2017, 2016, and 2015, respectively.&amp;#160;&amp;#160;We recorded a realized tax benefit in 2017, 2016, and 2015 from equity-based awards of $150,000, $1,000 and $4,000, respectively, related to options exercised.&amp;#160; Upon adoption of ASU 2016-09 in 2017 tax benefits realized on stock options exercises are included in income tax expense and are no longer included as a component of cash flows.&amp;#160; See Footnote 16 Accounting Pronouncements for further details regarding the adoption of ASU 2016-09.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;Restricted stock:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We paid a portion of the 2015 and 2014 incentive bonus for the chief executive officer and chief financial officer in the form of 28,231 and 23,578 deferred stock units, respectively, with a corresponding credit recorded to Additional Paid in Capital (net of share relinquishments) in the amounts of $151,000 and $121,000 in 2016, and 2015, respectively.&amp;#160;&amp;#160;Such deferred stock units were granted in February 2016 and February 2015, respectively, and were fully vested at the time of grant.&amp;#160;&amp;#160;These units will be converted three years from the grant date to shares of the Company's common stock on a one-for-one basis.&amp;#160;&amp;#160;The weighted average exercise price of the deferred stock units was $6.98.&amp;#160; Starting with the 2016 incentive bonus program, all incentive bonus payments are made in cash with no portion of the award paid in deferred stock units.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
  <!--Dividends, Common Stock, Cash-Retained Earnings [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">2581000</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-AOCI Attributable to Parent [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Common Stock [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Common Stock [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Retained Earnings [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">2416000</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Treasury Stock [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-->
  <us-gaap:DividendsCommonStockCash contextRef="c20150101to20151231" unitRef="U001" decimals="-3">2485000</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Retained Earnings [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">2485000</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Additional Paid-in Capital [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-->
  <us-gaap:DividendsCommonStockCash contextRef="c20160101to20161231" unitRef="U001" decimals="-3">2416000</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Treasury Stock [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Additional Paid-in Capital [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Additional Paid-in Capital [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-AOCI Attributable to Parent [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Treasury Stock [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-AOCI Attributable to Parent [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-Common Stock [Member]-->
  <us-gaap:DividendsCommonStockCash contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:DividendsCommonStockCash>
  <!--Dividends, Common Stock, Cash-->
  <us-gaap:DividendsCommonStockCash contextRef="c20170101to20171231" unitRef="U001" decimals="-3">2581000</us-gaap:DividendsCommonStockCash>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20170101to20171231" unitRef="U003" decimals="2">0.42</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20150101to20151231" unitRef="U003" decimals="2">0.39</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20160101to20161231" unitRef="U003" decimals="2">0.47</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20160101to20160331" unitRef="U003" decimals="2">0.08</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20170701to20170930" unitRef="U003" decimals="2">0.24</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20170401to20170630" unitRef="U003" decimals="2">0.12</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20170101to20170331" unitRef="U003" decimals="2">0.13</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20160701to20160930" unitRef="U003" decimals="2">0.12</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20160401to20160630" unitRef="U003" decimals="2">0.10</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20161001to20161231" unitRef="U003" decimals="2">0.18</us-gaap:EarningsPerShareDiluted>
  <!--Earnings Per Share, Diluted-->
  <us-gaap:EarningsPerShareDiluted contextRef="c20171001to20171231" unitRef="U003" decimals="2">-0.06</us-gaap:EarningsPerShareDiluted>
  <!--Earnings per share-->
  <us-gaap:EarningsPerShareTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;For 2017, 2016, and 2015, earnings per share was computed as follows (in thousands, except per share amounts):&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year Ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Net income&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,211&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,617&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,092&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Shares:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Basic:&amp;#160;&amp;#160;Weighted average common shares outstanding&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,610&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,818&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Add:&amp;#160;&amp;#160;Dilutive effect of outstanding options as determined by the treasury stock method&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;169&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;45&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;36&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Diluted:&amp;#160;&amp;#160;Weighted average common and common equivalent shares outstanding&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,592&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,655&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,854&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Net income per common share:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Basic&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.43&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.48&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.40&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Diluted&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.42&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.47&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.39&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The computation of diluted earnings per share excludes the effect of the potential exercise of stock awards, including stock options, restricted stock units and performance stock awards, when the average market price of the common stock is lower than the exercise price of the related stock award during the period.&amp;#160;&amp;#160;These outstanding stock awards are not included in the computation of diluted earnings per share because the effect would be anti-dilutive.&amp;#160;&amp;#160;Anti-dilutive stock awards excluded from the computation of earnings per dilutive share were 341,000, and 831,000, at December 31, 2017 and 2016 respectively.&amp;#160;&amp;#160;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20150101to20151231" unitRef="U003" decimals="2">0.40</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20160101to20161231" unitRef="U003" decimals="2">0.48</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20170101to20171231" unitRef="U003" decimals="2">0.43</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20160401to20160630" unitRef="U003" decimals="2">0.10</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20171001to20171231" unitRef="U003" decimals="2">-0.06</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20160701to20160930" unitRef="U003" decimals="2">0.12</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20170701to20170930" unitRef="U003" decimals="2">0.24</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20170401to20170630" unitRef="U003" decimals="2">0.12</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20161001to20161231" unitRef="U003" decimals="2">0.18</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20160101to20160331" unitRef="U003" decimals="2">0.08</us-gaap:EarningsPerShareBasic>
  <!--Basic (in dollars per share)-->
  <us-gaap:EarningsPerShareBasic contextRef="c20170101to20170331" unitRef="U003" decimals="2">0.13</us-gaap:EarningsPerShareBasic>
  <!--Net income and loss per share-->
  <us-gaap:EarningsPerSharePolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Net income and loss per share:&lt;/font&gt;&amp;#160;&amp;#160;We report net income or loss per share in accordance with ASC 260, "Earnings per Share (EPS)." Under this guidance, basic EPS, which excludes dilution, is computed by dividing income or loss available to common shareholders by the weighted average number of common shares outstanding for the period.&amp;#160;&amp;#160;Diluted EPS reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock.&amp;#160;&amp;#160;Diluted EPS includes in-the-money stock options using the treasury stock method.&amp;#160;&amp;#160;During a loss period, the assumed exercise of in-the-money stock options has an anti-dilutive effect, and therefore, these instruments are excluded from the computation of dilutive EPS.&amp;#160;&amp;#160;See Note 12 - Earnings per share.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:EarningsPerSharePolicyTextBlock>
  <!--Effect of exchange rate changes on cash and cash equivalents-->
  <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-12000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
  <!--Effect of exchange rate changes on cash and cash equivalents-->
  <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-30000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
  <!--Effect of exchange rate changes on cash and cash equivalents-->
  <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-10000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
  <!--State income taxes, net of federal income taxes-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes contextRef="c20170101to20171231" unitRef="U005" decimals="3">0.013</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
  <!--State income taxes, net of federal income taxes-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes contextRef="c20150101to20151231" unitRef="U005" decimals="3">0.008</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
  <!--State income taxes, net of federal income taxes-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes contextRef="c20160101to20161231" unitRef="U005" decimals="3">0.004</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
  <!--U.S. corporate tax rate change-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate contextRef="c20150101to20151231" unitRef="U005" decimals="3">0.000</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
  <!--U.S. corporate tax rate change-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate contextRef="c20160101to20161231" unitRef="U005" decimals="3">0.000</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
  <!--U.S. corporate tax rate change-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate contextRef="c20170101to20171231" unitRef="U005" decimals="3">0.194</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
  <!--Federal statutory tax rate-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="c20160101to20161231" unitRef="U005" decimals="INF">0.340</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
  <!--Federal statutory tax rate-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="c20170101to20171231" unitRef="U005" decimals="INF">0.340</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
  <!--Federal statutory tax rate-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="c20150101to20151231" unitRef="U005" decimals="INF">0.340</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
  <!--Effective Income Tax Rate Reconciliation, Tax Contingency, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies contextRef="c20150101to20151231" unitRef="U005" decimals="3">0.003</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
  <!--Effective Income Tax Rate Reconciliation, Tax Contingency, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies contextRef="c20160101to20161231" unitRef="U005" decimals="3">0.001</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
  <!--Effective Income Tax Rate Reconciliation, Tax Contingency, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies contextRef="c20170101to20171231" unitRef="U005" decimals="3">0.001</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
  <!--Effective Income Tax Rate Reconciliation, Tax Credit, Research, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch contextRef="c20150101to20151231" unitRef="U005" decimals="3">0.049</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
  <!--Effective Income Tax Rate Reconciliation, Tax Credit, Research, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch contextRef="c20160101to20161231" unitRef="U005" decimals="3">0.046</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
  <!--Effective Income Tax Rate Reconciliation, Tax Credit, Research, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch contextRef="c20170101to20171231" unitRef="U005" decimals="3">0.033</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
  <!--Valuation allowance and tax accruals-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance contextRef="c20170101to20171231" unitRef="U005" decimals="3">0.016</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
  <!--Valuation allowance and tax accruals-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance contextRef="c20160101to20161231" unitRef="U005" decimals="3">0.016</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
  <!--Valuation allowance and tax accruals-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance contextRef="c20150101to20151231" unitRef="U005" decimals="3">0.013</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
  <!--Effective Income Tax Rate Reconciliation, Nondeductible Expense, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpense contextRef="c20160101to20161231" unitRef="U005" decimals="3">0.012</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpense>
  <!--Effective Income Tax Rate Reconciliation, Nondeductible Expense, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpense contextRef="c20170101to20171231" unitRef="U005" decimals="3">0.019</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpense>
  <!--Effective Income Tax Rate Reconciliation, Nondeductible Expense, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpense contextRef="c20150101to20151231" unitRef="U005" decimals="3">0.007</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpense>
  <!--Effective Income Tax Rate Reconciliation, Other Adjustments, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments contextRef="c20170101to20171231" unitRef="U005" decimals="3">-0.001</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
  <!--Effective Income Tax Rate Reconciliation, Other Adjustments, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments contextRef="c20150101to20151231" unitRef="U005" decimals="3">0.002</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
  <!--Effective Income Tax Rate Reconciliation, Other Adjustments, Percent-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments contextRef="c20160101to20161231" unitRef="U005" decimals="3">-0.001</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
  <!--Stock option cancellations-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost contextRef="c20170101to20171231" unitRef="U005" decimals="3">0.017</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
  <!--Stock option cancellations-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost contextRef="c20150101to20151231" unitRef="U005" decimals="3">0.000</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
  <!--Stock option cancellations-->
  <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost contextRef="c20160101to20161231" unitRef="U005" decimals="3">0.000</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
  <!--Effective Income Tax Rate Reconciliation, Percent-->
  <us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="c20160101to20161231" unitRef="U005" decimals="3">0.300</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
  <!--Effective Income Tax Rate Reconciliation, Percent-->
  <us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="c20150101to20151231" unitRef="U005" decimals="3">0.304</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
  <!--Effective Income Tax Rate Reconciliation, Percent-->
  <us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="c20170101to20171231" unitRef="U005" decimals="3">0.526</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
  <!--Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Stock Options-->
  <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c20171231" unitRef="U001" decimals="-3">899000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
  <!--Employee Service Share-based Compensation, Tax Benefit from Exercise of Stock Options-->
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions contextRef="c20170101to20171231" unitRef="U001" decimals="-3">150000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
  <!--Employee Service Share-based Compensation, Tax Benefit from Exercise of Stock Options-->
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions contextRef="c20150101to20151231" unitRef="U001" decimals="-3">4000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
  <!--Employee Service Share-based Compensation, Tax Benefit from Exercise of Stock Options-->
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions contextRef="c20160101to20161231" unitRef="U001" decimals="-3">1000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
  <!--Employee Service Share-based Compensation, Tax Benefit from Compensation Expense-->
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">184000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
  <!--Employee Service Share-based Compensation, Tax Benefit from Compensation Expense-->
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">148000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
  <!--Employee Service Share-based Compensation, Tax Benefit from Compensation Expense-->
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">134000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
  <!--Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition-->
  <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="c20170101to20171231">P2Y7M6D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
  <!--Salaries and compensation related-->
  <us-gaap:EmployeeRelatedLiabilitiesCurrent contextRef="c20161231" unitRef="U001" decimals="-3">1722000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
  <!--Salaries and compensation related-->
  <us-gaap:EmployeeRelatedLiabilitiesCurrent contextRef="c20171231" unitRef="U001" decimals="-3">2288000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
  <!--Extended Product Warranty Accrual-->
  <us-gaap:ExtendedProductWarrantyAccrual contextRef="c20161231" unitRef="U001" decimals="-3">267000</us-gaap:ExtendedProductWarrantyAccrual>
  <!--Extended Product Warranty Accrual-->
  <us-gaap:ExtendedProductWarrantyAccrual contextRef="c20141231" unitRef="U001" decimals="-3">287000</us-gaap:ExtendedProductWarrantyAccrual>
  <!--Extended Product Warranty Accrual-->
  <us-gaap:ExtendedProductWarrantyAccrual contextRef="c20151231" unitRef="U001" decimals="-3">277000</us-gaap:ExtendedProductWarrantyAccrual>
  <!--Extended Product Warranty Accrual-->
  <us-gaap:ExtendedProductWarrantyAccrual contextRef="c20171231" unitRef="U001" decimals="-3">267000</us-gaap:ExtendedProductWarrantyAccrual>
  <!--Accrued product warranty liability, current-->
  <us-gaap:ExtendedProductWarrantyAccrualCurrent contextRef="c20161231" unitRef="U001" decimals="-3">169000</us-gaap:ExtendedProductWarrantyAccrualCurrent>
  <!--Accrued product warranty liability, current-->
  <us-gaap:ExtendedProductWarrantyAccrualCurrent contextRef="c20171231" unitRef="U001" decimals="-3">186000</us-gaap:ExtendedProductWarrantyAccrualCurrent>
  <!--Accrued product warranty liability, long-term-->
  <us-gaap:ExtendedProductWarrantyAccrualNoncurrent contextRef="c20161231" unitRef="U001" decimals="-3">98000</us-gaap:ExtendedProductWarrantyAccrualNoncurrent>
  <!--Accrued product warranty liability, long-term-->
  <us-gaap:ExtendedProductWarrantyAccrualNoncurrent contextRef="c20171231" unitRef="U001" decimals="-3">81000</us-gaap:ExtendedProductWarrantyAccrualNoncurrent>
  <!--Extended Product Warranty Accrual, Decrease for Payments-->
  <us-gaap:ExtendedProductWarrantyAccrualPayments contextRef="c20170101to20171231" unitRef="U001" decimals="-3">259000</us-gaap:ExtendedProductWarrantyAccrualPayments>
  <!--Extended Product Warranty Accrual, Decrease for Payments-->
  <us-gaap:ExtendedProductWarrantyAccrualPayments contextRef="c20160101to20161231" unitRef="U001" decimals="-3">264000</us-gaap:ExtendedProductWarrantyAccrualPayments>
  <!--Extended Product Warranty Accrual, Decrease for Payments-->
  <us-gaap:ExtendedProductWarrantyAccrualPayments contextRef="c20150101to20151231" unitRef="U001" decimals="-3">277000</us-gaap:ExtendedProductWarrantyAccrualPayments>
  <!--Extended Product Warranty Accrual, Increase for Warranties Issued-->
  <us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued contextRef="c20160101to20161231" unitRef="U001" decimals="-3">254000</us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued>
  <!--Extended Product Warranty Accrual, Increase for Warranties Issued-->
  <us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued contextRef="c20150101to20151231" unitRef="U001" decimals="-3">267000</us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued>
  <!--Extended Product Warranty Accrual, Increase for Warranties Issued-->
  <us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued contextRef="c20170101to20171231" unitRef="U001" decimals="-3">259000</us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued>
  <!--2016-->
  <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths contextRef="c20171231" unitRef="U001" decimals="-3">128000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
  <!--2020-->
  <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive contextRef="c20171231" unitRef="U001" decimals="-3">30000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20161231" unitRef="U001" decimals="-3">3122000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Purchased Technology [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember" unitRef="U001" decimals="-3">1433000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Trademarks [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember" unitRef="U001" decimals="-3">257000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Trademarks [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember" unitRef="U001" decimals="-3">306000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Customer Relationships [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember" unitRef="U001" decimals="-3">1300000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Covenant Not to Compete [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember" unitRef="U001" decimals="-3">146000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Other [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember" unitRef="U001" decimals="-3">80000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Customer Relationships [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember" unitRef="U001" decimals="-3">1163000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Other [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember" unitRef="U001" decimals="-3">80000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Patents [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember" unitRef="U001" decimals="-3">43000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Purchased Technology [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember" unitRef="U001" decimals="-3">1481000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20171231" unitRef="U001" decimals="-3">3359000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Covenant Not to Compete [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember" unitRef="U001" decimals="-3">146000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--Finite-Lived Intangible Assets, Accumulated Amortization-Patents [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember" unitRef="U001" decimals="-3">46000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <!--2018-->
  <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree contextRef="c20171231" unitRef="U001" decimals="-3">112000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
  <!--2019-->
  <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour contextRef="c20171231" unitRef="U001" decimals="-3">61000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
  <!--Gross amount-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20161231" unitRef="U001" decimals="-3">3667000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Covenant Not to Compete [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember" unitRef="U001" decimals="-3">146000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Trademarks [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember" unitRef="U001" decimals="-3">480000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Customer Relationships [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember" unitRef="U001" decimals="-3">1300000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Purchased Technology [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember" unitRef="U001" decimals="-3">1754000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Covenant Not to Compete [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember" unitRef="U001" decimals="-3">146000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Trademarks [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember" unitRef="U001" decimals="-3">480000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Other [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember" unitRef="U001" decimals="-3">80000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Patents [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20171231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember" unitRef="U001" decimals="-3">57000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Patents [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember" unitRef="U001" decimals="-3">57000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20171231" unitRef="U001" decimals="-3">3817000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Purchased Technology [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember" unitRef="U001" decimals="-3">1604000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Other [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember" unitRef="U001" decimals="-3">80000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--Gross amount-Customer Relationships [Member]-->
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c20161231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember" unitRef="U001" decimals="-3">1300000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <!--2017-->
  <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo contextRef="c20171231" unitRef="U001" decimals="-3">127000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
  <!--Foreign Currency Transaction Gain (Loss), before Tax-->
  <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-4000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
  <!--Foreign Currency Transaction Gain (Loss), before Tax-->
  <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c20150101to20151231" unitRef="U001" decimals="-3">1000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
  <!--Foreign Currency Transaction Gain (Loss), before Tax-->
  <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-11000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
  <!--Foreign currency translation-->
  <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Foreign currency translation:&lt;/font&gt;&amp;#160;&amp;#160;The financial position and results of operations of our foreign subsidiary in the United Kingdom are measured using local currency as the functional currency.&amp;#160;&amp;#160;Assets and liabilities of such subsidiary have been translated into U.S. dollars at the year-end exchange rate, related sales and expenses have been translated at the average exchange rate for the year, and shareholders' equity has been translated at historical exchange rates.&amp;#160;&amp;#160;The resulting translation gains or losses, net of tax, are recorded in shareholders' equity as a cumulative translation adjustment, which is a component of accumulated other comprehensive income.&amp;#160;&amp;#160;Foreign currency transaction gains and losses, including those related to intercompany balances, are recognized in Other, net on the Consolidated Statements of Income.&lt;/div&gt;&lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
  <!--Gain (Loss) on Disposition of Property Plant Equipment-->
  <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="c20150101to20151231" unitRef="U001" decimals="-3">4000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
  <!--Gain (Loss) on Disposition of Property Plant Equipment-->
  <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="c20160101to20161231" unitRef="U001" decimals="-3">5000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
  <!--Gain (Loss) on Disposition of Property Plant Equipment-->
  <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
  <!--General and administrative-->
  <us-gaap:GeneralAndAdministrativeExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">7367000</us-gaap:GeneralAndAdministrativeExpense>
  <!--General and administrative-->
  <us-gaap:GeneralAndAdministrativeExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">7984000</us-gaap:GeneralAndAdministrativeExpense>
  <!--General and administrative-->
  <us-gaap:GeneralAndAdministrativeExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">7267000</us-gaap:GeneralAndAdministrativeExpense>
  <!--Goodwill-->
  <us-gaap:Goodwill contextRef="c20161231" unitRef="U001" decimals="-3">2621000</us-gaap:Goodwill>
  <!--Goodwill-->
  <us-gaap:Goodwill contextRef="c20171231" unitRef="U001" decimals="-3">2621000</us-gaap:Goodwill>
  <!--Goodwill and Intangible assets-->
  <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Goodwill and Intangible assets&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/font&gt;&amp;#160;We acquire businesses in purchase transactions that result in the recognition of goodwill and intangible assets. The determination of the value of intangible assets requires management to make estimates and assumptions. In accordance with ASC 350-20 "Goodwill", acquired goodwill is not amortized but is subject to impairment testing at least annually and when an event occurs or circumstances change, that indicate it is more likely than not an impairment exists. Factors considered that may trigger an impairment review of either acquired goodwill or intangible assets are: significant underperformance relative to expected historical or projected future operating results; significant changes in the manner of use of acquired assets or the strategy for the overall business; significant negative industry or economic trends; and significant decline in market capitalization relative to net book value. Finite lived intangible assets are amortized and are tested for impairment when appropriate. We have determined that no goodwill or intangible asset impairment has occurred and the fair value of goodwill was substantially higher than our carrying value based on our assessment as of December 31, 2017 when the impairment review is performed.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">23799000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">24978000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">26662000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20160101to20160331" unitRef="U001" decimals="-3">5885000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20160401to20160630" unitRef="U001" decimals="-3">5983000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20170701to20170930" unitRef="U001" decimals="-3">7519000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20160701to20160930" unitRef="U001" decimals="-3">5915000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20170401to20170630" unitRef="U001" decimals="-3">6430000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20161001to20161231" unitRef="U001" decimals="-3">6016000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20170101to20170331" unitRef="U001" decimals="-3">6093000</us-gaap:GrossProfit>
  <!--Gross profit-->
  <us-gaap:GrossProfit contextRef="c20171001to20171231" unitRef="U001" decimals="-3">6620000</us-gaap:GrossProfit>
  <!--Foreign loss before taxes-->
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign contextRef="c20160101to20161231" unitRef="U001" decimals="-3">235000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
  <!--Foreign loss before taxes-->
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign contextRef="c20170101to20171231" unitRef="U001" decimals="-3">563000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
  <!--Foreign loss before taxes-->
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-174000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
  <!--Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest-->
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="c20160101to20161231" unitRef="U001" decimals="-3">5170000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
  <!--Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest-->
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="c20150101to20151231" unitRef="U001" decimals="-3">4442000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
  <!--Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest-->
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments contextRef="c20170101to20171231" unitRef="U001" decimals="-3">6772000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
  <!--Income taxes-->
  <us-gaap:IncomeTaxDisclosureTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;11. Income taxes&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The components of the income tax provision are as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year Ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Current:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Federal&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,379&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,776&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;450&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;State&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;114&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;70&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;22&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(49&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,444&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,848&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;472&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Deferred:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Federal&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,097&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(257&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;843&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;State&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;20&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(38&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;35&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,117&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(295&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;878&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Income tax provision&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,561&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,553&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,350&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;On December 22, 2017, the United States enacted significant changes to U.S. tax law following the passage and signing of the Tax Reform Act. The legislation significantly changes U.S. tax law by, among other things, lowering corporate income tax rates, implementing a territorial tax system and imposing a one-time repatriation tax on undistributed foreign earnings. The Tax Reform Act permanently reduces the U.S. corporate income tax rate from a maximum of 35% to a flat 21% rate, effective January 1, 2018. Income tax effects resulting from changes in tax laws are accounted for by the Company in accordance with authoritative guidance, which requires that these tax effects be recognized in the period in which the law is enacted.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;On December 22, 2017, the Securities and Exchange Commission ("SEC") staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations where a registrant does not have the necessary information available, prepared, or analyzed in reasonable detail to complete the accounting for certain income tax effects of the Tax Reform Act. SAB 118 provides a measurement period, not to exceed one year from the enactment of the Tax Reform Act. In accordance with SAB 118, the Company is required to reflect the income tax effects of those aspects of the Tax Reform Act for which the accounting is complete. To the extent there are areas that are incomplete, but are capable of reasonable estimates, a provisional amount is required to be recorded by the Company. If a reasonable estimate is unable to be calculated, the Company is required to disclose why. The Company has recognized provisional tax impacts related to the revaluation of deferred tax assets and liabilities and included these amounts in its consolidated financial statements for the year ended December 31, 2017. The ultimate impact may differ from these provisional amounts, possibly materially, due to, among other things, additional analysis, changes in interpretations and assumptions, additional regulatory guidance from Treasury, the Internal Revenue Service and State Governments, and actions the Company may take as a result of the Tax Reform Act.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The Company uses the asset and liability method of accounting for income taxes. Under this method, deferred tax assets and liabilities are recognized for future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax basis. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to reverse. As a result of the reduction of TransAct's U.S. corporate income tax rate from 34% to 21% under the Tax Reform Act, the Company revalued its ending net deferred tax assets at December 31, 2017 and recognized a provisional $1,315,000 charge to income tax expense in the Company's consolidated statement of income for the year ended December 31, 2017.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The Tax Reform Act also provided for a one-time deemed mandatory repatriation of post-1986 undistributed foreign subsidiary earnings and profits ("E&amp;amp;P") through the year ended December 31, 2017. The Company has no undistributed foreign E&amp;amp;P subject to the one-time mandatory repatriation and therefore has not recognized any income tax expense related to undistributed foreign subsidiary E&amp;amp;P for the year ended December 31, 2017.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;While the Tax Reform Act provides for a territorial tax system, beginning in 2018, it includes two new U.S. tax base erosion provisions, the global intangible low-taxed income ("GILTI") provisions and the base-erosion and anti-abuse tax ("BEAT") provisions. The GILTI provisions require the Company to include in its U.S. income tax return foreign subsidiary earnings in excess of an allowable return on the foreign subsidiary's tangible assets. The BEAT provisions in the Tax Reform Act eliminate the deduction of certain base-erosion payments made to related foreign corporations, and impose a minimum tax if greater than regular tax. The Company does not expect it will be subject to these taxes and therefore has not included any tax impacts of GILTI or BEAT in its consolidated financial statements for the year ended December 31, 2017. Starting January 1, 2018, the Company will account for GILIT and BEAT in the period in which it is incurred to the extent these expectations change.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Our effective tax rates were 52.6%, 30.0%, and 30.4% for 2017, 2016, and 2015, respectively.&amp;#160;&amp;#160;The effective tax rate in 2017 was unusually high due to the impact of the Tax Reform Act. As explained above we recognized a provisional $1,315,000 charge to income tax expense for the year ended December 31, 2017 as a result of revaluing our net deferred tax assets using the new U.S. corporate tax rate of 21%.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;At December 31, 2017, we have no federal or state net operating loss carryforwards and no R&amp;amp;D credit carryforwards or state tax credit carryforwards as of December 31, 2017.&amp;#160;&amp;#160;Foreign loss before taxes was $563,000, $235,000, and $174,000 in 2017, 2016, and 2015, respectively.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Deferred income taxes arise from temporary differences between the tax basis of assets and liabilities and their reported amounts in the Consolidated Financial Statements.&amp;#160;&amp;#160;Our deferred tax assets and liabilities were comprised of the following:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Deferred tax assets:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Foreign net operating losses&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;328&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Depreciation&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;107&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;88&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Inventory reserves&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;845&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,264&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Deferred revenue&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;16&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;31&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Warranty reserve&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;59&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;93&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Stock compensation expense&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;694&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,273&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Other accrued compensation&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;363&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;387&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Other liabilities and reserves&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;246&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;329&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 27pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Gross deferred tax assets&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,658&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,888&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 27pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Valuation allowance&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(328&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 45pt; line-height: 10.25pt; text-indent: -18pt;"&gt;Net deferred tax assets&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,330&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,465&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Deferred tax liabilities:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Other&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;22&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;33&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 36pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Net deferred tax liabilities&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;22&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;33&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Total net deferred tax assets&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,308&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,432&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;As of December 31, 2017 a valuation allowance of $328,000 has been established for foreign net operating loss carryforwards that are not expected to be used.&amp;#160;The following table summarizes the activity recorded in the valuation allowance on the deferred tax assets:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, beginning of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;340&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;282&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Additions charged to income tax provision&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;67&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;83&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;58&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Reductions credited to income tax provision&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(162&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, end of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;328&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;340&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Differences between the U.S. statutory federal income tax rate and our effective income tax rate are analyzed below:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year Ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Federal statutory tax rate&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;34.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;34.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;34.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;U.S. corporate tax rate change&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;19.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Stock option cancellations&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.7&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Valuation allowance and tax accruals&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;State income taxes, net of federal income taxes&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Uncertain tax positions&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Miscellaneous permanent items&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1.9&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1.2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.7&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;R&amp;amp;D credit&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(3.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(4.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(4.9&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Other&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Effective tax rate&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;52.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;30.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;30.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;At December 31, 2017 and 2016, we had $104,000 and $111,000 of total gross unrecognized tax benefits that, if recognized, would favorably affect the effective income tax rate in any future periods.&amp;#160;&amp;#160;We are not aware of any events that could occur within the next twelve months that could cause a significant change in the total amount of unrecognized tax benefits.&amp;#160;&amp;#160;A tabular reconciliation of the gross amounts of unrecognized tax benefits at the beginning and end of the year is as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Unrecognized tax benefits as of January 1&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;111&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;114&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Tax positions taken during the current period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;24&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;27&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Lapse of statute of limitations&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(31&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Unrecognized tax benefits as of December 31&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;104&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;111&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We expect $28,000 of the $104,000 of unrecognized tax benefits will reverse in 2018 upon the expiration of the statute of limitations.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We recognize interest and penalties related to uncertain tax positions in the income tax provision.&amp;#160;&amp;#160;As of December 31, 2017 and 2016, we have $17,000 and $18,000, respectively, of accrued interest and penalties related to uncertain tax positions.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 8pt; font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We are subject to U.S. federal income tax as well as income tax of certain state and foreign jurisdictions.&amp;#160;&amp;#160;We have substantially concluded all U.S. federal income tax, state and local, and foreign tax matters through 2013.&amp;#160;&amp;#160;However, our federal tax returns for the years 2014 through 2016 remain open to examination. Various state and foreign tax jurisdiction tax years remain open to examination as well, though we believe that any additional assessment would be immaterial to the Consolidated Financial Statements.&lt;/div&gt;&lt;div style="font-size: 10pt; font-weight: bold; line-height: 10.25pt;"&gt;12. Earnings per share&lt;/div&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
  <!--Accrued interest and penalties related to uncertain tax positions-->
  <us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued contextRef="c20171231" unitRef="U001" decimals="-3">17000</us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued>
  <!--Accrued interest and penalties related to uncertain tax positions-->
  <us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued contextRef="c20161231" unitRef="U001" decimals="-3">18000</us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued>
  <!--Income tax provision (benefit)-->
  <us-gaap:IncomeTaxExpenseBenefit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">3561000</us-gaap:IncomeTaxExpenseBenefit>
  <!--Income tax provision (benefit)-->
  <us-gaap:IncomeTaxExpenseBenefit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">1350000</us-gaap:IncomeTaxExpenseBenefit>
  <!--Income tax provision (benefit)-->
  <us-gaap:IncomeTaxExpenseBenefit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">1553000</us-gaap:IncomeTaxExpenseBenefit>
  <!--Prepaid income taxes-->
  <us-gaap:IncomeTaxesReceivable contextRef="c20161231" unitRef="U001" decimals="-3">0</us-gaap:IncomeTaxesReceivable>
  <!--Prepaid income taxes-->
  <us-gaap:IncomeTaxesReceivable contextRef="c20171231" unitRef="U001" decimals="-3">514000</us-gaap:IncomeTaxesReceivable>
  <!--Income taxes paid-->
  <us-gaap:IncomeTaxesPaid contextRef="c20170101to20171231" unitRef="U001" decimals="-3">2991000</us-gaap:IncomeTaxesPaid>
  <!--Income taxes paid-->
  <us-gaap:IncomeTaxesPaid contextRef="c20150101to20151231" unitRef="U001" decimals="-3">130000</us-gaap:IncomeTaxesPaid>
  <!--Income taxes paid-->
  <us-gaap:IncomeTaxesPaid contextRef="c20160101to20161231" unitRef="U001" decimals="-3">2065000</us-gaap:IncomeTaxesPaid>
  <!--Income Tax, Policy [Policy Text Block]-->
  <us-gaap:IncomeTaxPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Income taxes:&lt;/font&gt;&amp;#160;&amp;#160;The income tax amounts reflected in the accompanying Consolidated Financial Statements are accounted for under the liability method in accordance with ASC 740, "Income Taxes."&amp;#160;&amp;#160;Deferred tax assets and liabilities are recognized for the estimated future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards.&amp;#160;&amp;#160;Deferred tax assets and liabilities are measured using enacted tax rates in effect for the year in which those temporary differences are expected to be recovered or settled.&amp;#160;&amp;#160;We assess the likelihood that net deferred tax assets will be realized from future taxable income, and to the extent that we believe that realization is not likely, we establish a valuation allowance.&amp;#160;&amp;#160;In accordance with ASC 740, we identified, evaluated and measured the amount of benefits to be recognized for our tax return positions.&amp;#160;&amp;#160;See Note 11 for information regarding our accounting for income taxes and additional provision items recorded in regards to the Tax Cuts and Jobs Act (the "Tax Reform Act").&lt;/div&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
  <!--Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities-->
  <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities contextRef="c20150101to20151231" unitRef="U001" decimals="-3">138000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
  <!--Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities-->
  <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities contextRef="c20170101to20171231" unitRef="U001" decimals="-3">1053000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
  <!--Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities-->
  <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-1088000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
  <!--Increase (Decrease) in Accounts Payable-->
  <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-988000</us-gaap:IncreaseDecreaseInAccountsPayable>
  <!--Increase (Decrease) in Accounts Payable-->
  <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c20160101to20161231" unitRef="U001" decimals="-3">2255000</us-gaap:IncreaseDecreaseInAccountsPayable>
  <!--Increase (Decrease) in Accounts Payable-->
  <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c20150101to20151231" unitRef="U001" decimals="-3">277000</us-gaap:IncreaseDecreaseInAccountsPayable>
  <!--Increase (Decrease) in Income Taxes Receivable-->
  <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-407000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
  <!--Increase (Decrease) in Income Taxes Receivable-->
  <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="c20160101to20161231" unitRef="U001" decimals="-3">5000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
  <!--Increase (Decrease) in Income Taxes Receivable-->
  <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="c20170101to20171231" unitRef="U001" decimals="-3">518000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
  <!--Increase (Decrease) in Other Operating Assets-->
  <us-gaap:IncreaseDecreaseInOtherOperatingAssets contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-53000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
  <!--Increase (Decrease) in Other Operating Assets-->
  <us-gaap:IncreaseDecreaseInOtherOperatingAssets contextRef="c20170101to20171231" unitRef="U001" decimals="-3">137000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
  <!--Increase (Decrease) in Other Operating Assets-->
  <us-gaap:IncreaseDecreaseInOtherOperatingAssets contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-50000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
  <!--Increase (Decrease) in Inventories-->
  <us-gaap:IncreaseDecreaseInInventories contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-1580000</us-gaap:IncreaseDecreaseInInventories>
  <!--Increase (Decrease) in Inventories-->
  <us-gaap:IncreaseDecreaseInInventories contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-834000</us-gaap:IncreaseDecreaseInInventories>
  <!--Increase (Decrease) in Inventories-->
  <us-gaap:IncreaseDecreaseInInventories contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-509000</us-gaap:IncreaseDecreaseInInventories>
  <!--Increase (Decrease) in Receivables-->
  <us-gaap:IncreaseDecreaseInReceivables contextRef="c20170101to20171231" unitRef="U001" decimals="-3">405000</us-gaap:IncreaseDecreaseInReceivables>
  <!--Increase (Decrease) in Receivables-->
  <us-gaap:IncreaseDecreaseInReceivables contextRef="c20160101to20161231" unitRef="U001" decimals="-3">3434000</us-gaap:IncreaseDecreaseInReceivables>
  <!--Increase (Decrease) in Receivables-->
  <us-gaap:IncreaseDecreaseInReceivables contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-1909000</us-gaap:IncreaseDecreaseInReceivables>
  <!--Add: Dilutive effect of outstanding options as determined by the treasury stock method (in shares)-->
  <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c20160101to20161231" unitRef="U002" decimals="-3">45000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
  <!--Add: Dilutive effect of outstanding options as determined by the treasury stock method (in shares)-->
  <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c20150101to20151231" unitRef="U002" decimals="-3">36000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
  <!--Add: Dilutive effect of outstanding options as determined by the treasury stock method (in shares)-->
  <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c20170101to20171231" unitRef="U002" decimals="-3">169000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
  <!--Intangible assets, net of accumulated amortization of $2,779 and $2,326, respectively-->
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="c20161231" unitRef="U001" decimals="-3">545000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
  <!--Intangible assets, net of accumulated amortization of $2,779 and $2,326, respectively-->
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="c20171231" unitRef="U001" decimals="-3">458000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
  <!--Intangible assets-->
  <us-gaap:IntangibleAssetsDisclosureTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: left; line-height: 10.25pt;"&gt;5. Intangible assets&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Identifiable intangible assets are recorded in Intangible assets in the accompanying Consolidated Balance Sheets and are comprised of the following:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="14" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Gross Amount&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Accumulated Amortization&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Gross Amount&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Accumulated Amortization&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Purchased technology&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,754&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1,481&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,604&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1,433&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Customer relationships&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,300&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1,300&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,300&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1,163&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Trademark&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;480&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(306&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;480&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(257&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Covenant not to compete&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;146&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(146&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;146&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(146&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Patents&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;57&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(46&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;57&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(43&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Other&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;80&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(80&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;80&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(80&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Total&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,817&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(3,359&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,667&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(3,122&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Amortization expense was $237,000, $343,000 and $454,000 in 2017, 2016 and 2015, respectively.&amp;#160;&amp;#160;Amortization expense for each of the next five years ending December 31 is expected to be as follows: $128,000 in 2018; $127,000 in 2019; $112,000 in 2020; $61,000 in 2021; and $30,000 in 2022.&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/div&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
  <!--Interest Expense-->
  <us-gaap:InterestExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">33000</us-gaap:InterestExpense>
  <!--Interest Expense-->
  <us-gaap:InterestExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">37000</us-gaap:InterestExpense>
  <!--Interest Expense-->
  <us-gaap:InterestExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">33000</us-gaap:InterestExpense>
  <!--Interest income-->
  <us-gaap:InterestIncomeDomesticDeposits contextRef="c20150101to20151231" unitRef="U001" decimals="-3">9000</us-gaap:InterestIncomeDomesticDeposits>
  <!--Interest income-->
  <us-gaap:InterestIncomeDomesticDeposits contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:InterestIncomeDomesticDeposits>
  <!--Interest income-->
  <us-gaap:InterestIncomeDomesticDeposits contextRef="c20160101to20161231" unitRef="U001" decimals="-3">7000</us-gaap:InterestIncomeDomesticDeposits>
  <!--Interest paid-->
  <us-gaap:InterestPaidNet contextRef="c20150101to20151231" unitRef="U001" decimals="-3">34000</us-gaap:InterestPaidNet>
  <!--Interest paid-->
  <us-gaap:InterestPaidNet contextRef="c20160101to20161231" unitRef="U001" decimals="-3">31000</us-gaap:InterestPaidNet>
  <!--Interest paid-->
  <us-gaap:InterestPaidNet contextRef="c20170101to20171231" unitRef="U001" decimals="-3">30000</us-gaap:InterestPaidNet>
  <!--Inventory Disclosure [Text Block]-->
  <us-gaap:InventoryDisclosureTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;3. Inventories, net&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The components of inventories are:&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Raw materials and purchased component parts&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,322&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,298&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Work-in-process&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Finished goods&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,553&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,401&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8,875&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;9,707&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
  <!--Finished goods-->
  <us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="c20161231" unitRef="U001" decimals="-3">3401000</us-gaap:InventoryFinishedGoodsNetOfReserves>
  <!--Finished goods-->
  <us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="c20171231" unitRef="U001" decimals="-3">2553000</us-gaap:InventoryFinishedGoodsNetOfReserves>
  <!--Inventories-->
  <us-gaap:InventoryNet contextRef="c20171231" unitRef="U001" decimals="-3">8875000</us-gaap:InventoryNet>
  <!--Inventories-->
  <us-gaap:InventoryNet contextRef="c20161231" unitRef="U001" decimals="-3">9707000</us-gaap:InventoryNet>
  <!--Work-in-process-->
  <us-gaap:InventoryWorkInProcessNetOfReserves contextRef="c20171231" unitRef="U001" decimals="-3">0</us-gaap:InventoryWorkInProcessNetOfReserves>
  <!--Work-in-process-->
  <us-gaap:InventoryWorkInProcessNetOfReserves contextRef="c20161231" unitRef="U001" decimals="-3">8000</us-gaap:InventoryWorkInProcessNetOfReserves>
  <!--Raw materials and purchased component parts-->
  <us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves contextRef="c20171231" unitRef="U001" decimals="-3">6322000</us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves>
  <!--Raw materials and purchased component parts-->
  <us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves contextRef="c20161231" unitRef="U001" decimals="-3">6298000</us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves>
  <!--Inventory, Policy [Policy Text Block]-->
  <us-gaap:InventoryPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Inventories:&lt;/font&gt;&amp;#160;&amp;#160;Inventories are stated at the lower of cost (principally standard cost, which approximates actual cost on a first-in, first-out basis) or net realizable value.&amp;#160;&amp;#160;We review net realizable value based on estimated selling prices in the ordinary course of business less estimated costs of completions, disposal and transportation, historical usage and estimates of future demand.&amp;#160;&amp;#160;Based on these reviews, inventory write-downs are recorded, as necessary, to reflect estimated obsolescence, excess quantities and net realizable value.&amp;#160;&amp;#160;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:InventoryPolicyTextBlock>
  <!--Leases-->
  <us-gaap:LesseeLeasesPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Leases:&lt;/font&gt;&amp;#160;&amp;#160;Rent expense under non-cancelable operating leases with scheduled rent increases or free rent periods are accounted for on a straight-line basis over the lease term, beginning on the date of control of physical use of the asset or of initial possession.&amp;#160;&amp;#160;The amount of the excess of straight-line rent expense over scheduled payments is recorded as a deferred liability.&amp;#160;&amp;#160;Construction allowances and other such lease incentives are recorded as deferred credits, and are amortized on a straight-line basis as a reduction of rent expense beginning in the period they are deemed to be earned, which generally coincides with the occupancy date.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:LesseeLeasesPolicyTextBlock>
  <!--Rent expense under operating leases-Equipment and Real Property [Member]-->
  <us-gaap:LeaseAndRentalExpense contextRef="c20160101to20161231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember" unitRef="U001" decimals="-3">1046000</us-gaap:LeaseAndRentalExpense>
  <!--Rent expense under operating leases-Equipment and Real Property [Member]-->
  <us-gaap:LeaseAndRentalExpense contextRef="c20150101to20151231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember" unitRef="U001" decimals="-3">932000</us-gaap:LeaseAndRentalExpense>
  <!--Rent expense under operating leases-Equipment and Real Property [Member]-->
  <us-gaap:LeaseAndRentalExpense contextRef="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember" unitRef="U001" decimals="-3">1142000</us-gaap:LeaseAndRentalExpense>
  <!--Liabilities and Equity-->
  <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c20161231" unitRef="U001" decimals="-3">32042000</us-gaap:LiabilitiesAndStockholdersEquity>
  <!--Liabilities and Equity-->
  <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c20171231" unitRef="U001" decimals="-3">33950000</us-gaap:LiabilitiesAndStockholdersEquity>
  <!--Liabilities-->
  <us-gaap:Liabilities contextRef="c20161231" unitRef="U001" decimals="-3">7933000</us-gaap:Liabilities>
  <!--Liabilities-->
  <us-gaap:Liabilities contextRef="c20171231" unitRef="U001" decimals="-3">7936000</us-gaap:Liabilities>
  <!--Liabilities, Current-->
  <us-gaap:LiabilitiesCurrent contextRef="c20161231" unitRef="U001" decimals="-3">7424000</us-gaap:LiabilitiesCurrent>
  <!--Liabilities, Current-->
  <us-gaap:LiabilitiesCurrent contextRef="c20171231" unitRef="U001" decimals="-3">7349000</us-gaap:LiabilitiesCurrent>
  <!--Liabilities, Noncurrent-->
  <us-gaap:LiabilitiesNoncurrent contextRef="c20171231" unitRef="U001" decimals="-3">587000</us-gaap:LiabilitiesNoncurrent>
  <!--Liabilities, Noncurrent-->
  <us-gaap:LiabilitiesNoncurrent contextRef="c20161231" unitRef="U001" decimals="-3">509000</us-gaap:LiabilitiesNoncurrent>
  <!--Line of Credit Facility, Unused Capacity, Commitment Fee Percentage-TD Bank, N.A. [Member]-Revolving Credit Facility [Member]-->
  <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage contextRef="c20170101to20171231_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember" unitRef="U005" decimals="5">0.00125</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
  <!--Line of Credit Facility, Maximum Borrowing Capacity-TD Bank, N.A. [Member]-Revolving Credit Facility [Member]-->
  <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity contextRef="c20171231_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember" unitRef="U001" decimals="-3">20000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
  <!--Undrawn commitments-TD Bank, N.A. [Member]-Revolving Credit Facility [Member]-->
  <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity contextRef="c20171231_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember" unitRef="U001" decimals="-3">20000000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
  <!--Settlement expenses associated with lawsuit-->
  <us-gaap:LitigationSettlementExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:LitigationSettlementExpense>
  <!--Settlement expenses associated with lawsuit-->
  <us-gaap:LitigationSettlementExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">1738000</us-gaap:LitigationSettlementExpense>
  <!--Settlement expenses associated with lawsuit-->
  <us-gaap:LitigationSettlementExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">0</us-gaap:LitigationSettlementExpense>
  <!--Settlement expenses associated with lawsuit-Settled Litigation [Member]-Civil Complaint filed by Avery Dennison Corporation [Member]-->
  <us-gaap:LitigationSettlementExpense contextRef="c20141001to20141231_LitigationCaseAxis_CivilComplaintFiledByAveryDennisonCorporationMember_LitigationStatusAxis_SettledLitigationMember" unitRef="U001" decimals="-3">3625000</us-gaap:LitigationSettlementExpense>
  <!--Settlement expenses associated with lawsuit-Settled Litigation [Member]-Civil Complaint filed by Avery Dennison Corporation [Member]-->
  <us-gaap:LitigationSettlementExpense contextRef="c20150401to20150630_LitigationCaseAxis_CivilComplaintFiledByAveryDennisonCorporationMember_LitigationStatusAxis_SettledLitigationMember" unitRef="U001" decimals="-3">-25000</us-gaap:LitigationSettlementExpense>
  <!--Description of business-->
  <us-gaap:NatureOfOperations contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;1. Description of business&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;TransAct Technologies Incorporated ("TransAct" or the "Company"), which has its headquarters in Hamden, CT and its primary operating facility in Ithaca, NY, operates in one operating segment: software-driven technology and printing solutions for high growth markets including restaurant solutions, casino and gaming, lottery, POS automation and banking, oil and gas and mobile markets.&amp;#160;&amp;#160;Our solutions are designed based on market-specific requirements and are sold under the AccuDate&amp;#8482; Ithaca&amp;#174;, RESPONDER&amp;#174;, Epic, EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; and Printrex&amp;#174; product brands.&amp;#160;&amp;#160;We distribute our products through OEMs, value-added resellers, selected distributors, and directly to end-users.&amp;#160;&amp;#160;Our product distribution spans across the Americas, the Middle East, Africa, Asia, Australia, the Caribbean Islands and the South Pacific.&amp;#160;&amp;#160;We also generate revenue from the after-market side of the business, providing printer and terminal service, supplies and spare parts in addition to revenue from our software solution, the EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; Print System ("EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt;"), that enables casino operators to create promotional coupons and marketing messages and print them in real-time at the slot machine.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:NatureOfOperations>
  <!--Net Cash Provided by (Used in) Financing Activities-->
  <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-5964000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
  <!--Net Cash Provided by (Used in) Financing Activities-->
  <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-1919000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
  <!--Net Cash Provided by (Used in) Financing Activities-->
  <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-3242000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
  <!--Net Cash Provided by (Used in) Investing Activities-->
  <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-955000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
  <!--Net Cash Provided by (Used in) Investing Activities-->
  <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-600000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
  <!--Net Cash Provided by (Used in) Investing Activities-->
  <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-985000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
  <!--Net Cash Provided by (Used in) Operating Activities-->
  <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c20170101to20171231" unitRef="U001" decimals="-3">5918000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
  <!--Net Cash Provided by (Used in) Operating Activities-->
  <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c20150101to20151231" unitRef="U001" decimals="-3">5551000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
  <!--Net Cash Provided by (Used in) Operating Activities-->
  <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c20160101to20161231" unitRef="U001" decimals="-3">4624000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20150101to20151231" unitRef="U001" decimals="-3">3092000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20160101to20161231" unitRef="U001" decimals="-3">3617000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20170101to20171231" unitRef="U001" decimals="-3">3211000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Common Stock [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Treasury Stock [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Treasury Stock [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-AOCI Attributable to Parent [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Common Stock [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Additional Paid-in Capital [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Additional Paid-in Capital [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Additional Paid-in Capital [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Retained Earnings [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">3092000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Retained Earnings [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">3617000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Common Stock [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-AOCI Attributable to Parent [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Treasury Stock [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-Retained Earnings [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">3211000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-AOCI Attributable to Parent [Member]-->
  <us-gaap:NetIncomeLoss contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20170401to20170630" unitRef="U001" decimals="-3">867000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20170701to20170930" unitRef="U001" decimals="-3">1813000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20161001to20161231" unitRef="U001" decimals="-3">1356000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20170101to20170331" unitRef="U001" decimals="-3">943000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20160401to20160630" unitRef="U001" decimals="-3">753000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20171001to20171231" unitRef="U001" decimals="-3">-412000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20160101to20160331" unitRef="U001" decimals="-3">625000</us-gaap:NetIncomeLoss>
  <!--Net income (loss)-->
  <us-gaap:NetIncomeLoss contextRef="c20160701to20160930" unitRef="U001" decimals="-3">883000</us-gaap:NetIncomeLoss>
  <!--Accounting pronouncements-->
  <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: left; line-height: 10.25pt;"&gt;16. Accounting pronouncements&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;In May 2014, the Financial Accounting Standards Board ("FASB") issued Accounting Standards Update ("ASU") 2014-09, "Revenue from Contracts with Customers." This ASU is intended to clarify the principles for recognizing revenue by removing inconsistencies in revenue requirements; providing a more robust framework for addressing revenue issues; improving comparability of revenue recognition practices across entities, industries, jurisdictions and capital markets; and providing more useful information to users of financial statements through improved revenue disclosure requirements. In applying the amended guidance, an entity will (1) identify the contract(s) with a customer; (2) identify the performance obligations in the contract; (3) determine the transaction price; (4) allocate the transaction price to the contract's performance obligations; and (5) recognize revenue when (or as) the entity satisfies a performance obligation.&amp;#160; Entities have the option of using either a full retrospective approach or modified retrospective approach to adopt the amended guidance.&amp;#160; The amended guidance applies to all contracts with customers except those that are within the scope of other topics in the FASB Accounting Standards Codification.&amp;#160;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;In the first quarter of 2018, the Company will complete its adoption activities, including the integration of the standard update into our financial reporting process and systems.&amp;#160; The Company will adopt the amended guidance using the modified retrospective transition approach, with any cumulative effect of initially adopting this standard recognized through retained earnings at the date of adoption.&amp;#160; The provisions of this standard are effective for interim and annual periods beginning after December 15, 2017.&amp;#160; We will adopt the amended guidance on January 1, 2018, at which time it becomes effective for the Company.&amp;#160; The new standard will change revenue practices for testing service contracts reported as part of our TSG market.&amp;#160; Revenue will now be recognized at a point in time as our performance obligation is completed as opposed to our current practice of recognizing based on percentage-of-completion.&amp;#160; As of Decemeber 31, 2017 we have no open testing service contracts that will require adjustment to retained earnings.&amp;#160; While we are still finalizing our evaluation of the impact of the new revenue standard, the impact is not expected to be material.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;In February&amp;#160;2016, the FASB&amp;#160;issued ASU&amp;#160;No. 2016-02, &lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;Leases (Topic 842&lt;/font&gt;), which sets out the principles for the recognition, measurement, presentation and disclosure of leases for both parties to a contract (i.e., lessees and lessors).&amp;#160; The new standard requires lessees to apply a dual approach, classifying leases as either finance or operating leases based on the principle of whether or not the lease is effectively a financed purchase by the lessee.&amp;#160; This classification will determine whether lease expense is recognized based on an effective interest method or on a straight-line basis over the term of the lease, respectively.&amp;#160; A lessee is also required to record a right-of-use asset and a lease liability for all leases with a term of greater than 12 months regardless of their classification.&amp;#160; Leases with a term of 12 months or less will be accounted for similar to existing guidance for operating leases today.&amp;#160; ASU&amp;#160;2016-02 supersedes the previous leases standard, ASC&amp;#160;840, &lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;Leases&lt;/font&gt;, and is effective for public entities for annual periods beginning after December&amp;#160;15, 2018 and for interim periods within those fiscal years.&amp;#160; Early adoption is permitted.&amp;#160; The Company does have leases for equipment and real property which exceed 12 months and we are currently evaluating the impact that the adoption of ASU&amp;#160;2016-02 will have on our financial statements.&amp;#160;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;In May&amp;#160;2017, the FASB&amp;#160;issued ASU&amp;#160;No. 2017-09, "Compensation-Stock Compensation: Scope of modification accounting".&amp;#160; ASU&amp;#160;2017-09 provides guidance about which changes to the terms or conditions of a share-based payment award require an entity to apply modification accounting in Topic 718.&amp;#160; ASU&amp;#160;No. 2017-09 is effective for fiscal years beginning after December&amp;#160;15, 2017, with early adoption permitted, including during an interim period for which financial statements have not yet been made available for issuance.&amp;#160; The amendments should be applied prospectively to an award modified on or after the adoption date.&amp;#160; We will adopt ASU 2017-09 in our consolidated financial statements in the first quarter of 2018 and the adoption is not expected to have an impact on our financial statements.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The following accounting pronouncements were adopted during 2017:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;In July 2015, FASB issued ASU 2015-11, "Simplifying the Measurement of Inventory." This ASU changes the measurement principle for inventory from the lower of cost or market to lower of cost or net realizable value. Net realizable value is defined as the estimated selling prices in the ordinary course of business less reasonably predictable costs of completion, disposal and transportation. The provisions of this ASU became effective for years beginning after December 15, 2016.&amp;#160; We adopted this guidance in the first quarter of 2017 and the adoption has not resulted in a change to the value of inventory.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;In March 2016, the FASB issued ASU 2016-09, "Compensation-Stock Compensation: Improvements to Employee Share-Based Payment Accounting."&amp;#160;&amp;#160; This ASU is intended to simplify several aspects of the accounting for share based payment transactions. The amended guidance requires that all tax effects related to share-based payments are recorded at settlement (or expiration) through the income statement, rather than through equity. Cash flows related to excess tax benefits will no longer be separately classified as a financing activity apart from other income tax cash flows. The amended guidance also allows for an employer to repurchase additional employee shares for tax withholding purposes without requiring liability accounting and clarifies that all cash payments made to tax authorities on an employee's behalf for withheld shares should be presented as a financing activity on the Consolidated Statements of Cash Flows. This ASU became effective for years beginning after December 15, 2016, and interim periods within those fiscal years, beginning after December 15, 2016.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We adopted ASU 2016-09 in the first quarter of 2017.&amp;#160; This adoption required us to reflect any adjustments as of January 1, 2017, the beginning of the annual period that includes the interim period of adoption.&amp;#160; In 2017, there were 166,600 options exercised that required $150,000 of excess tax benefits to be recorded in the provision for income taxes.&amp;#160; In 2016, there were 3,750 options exercised that required $1,000 of excess tax benefits to be recorded in additional paid-in-capital, as was required pursuant to the prior accounting guidance.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;In connection with the adoption of ASU 2016-09, in the first quarter of 2017, we made an accounting policy election to no longer estimate forfeitures expected to occur to determine the amount of compensation cost to be recognized in each period.&amp;#160; This election required the cumulative effect of the change to be recorded to retained earnings.&amp;#160; As of January 1, 2017, we recorded $31,000 to decrease retained earnings and increase additional paid-in capital for the difference between the amount of compensation cost previously recorded and the amount that would have been recorded without assuming forfeitures.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The presentation requirements for cash flows related to excess tax benefits and employee taxes paid for withheld shares were applied retrospectively to all periods presented. This resulted in an increase in both net cash provided by operating activities and net cash used by financing activities of $23,000 for 2017. &amp;#160;&amp;#160;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;In January 2017, the FASB issued ASU 2017-04, &lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment&lt;/font&gt;. This ASU eliminates Step 2 of the current goodwill impairment test, which requires a hypothetical purchase price allocation to measure goodwill impairment. A goodwill impairment loss will instead be measured at the amount by which a reporting unit's carrying value exceeds its fair value, not to exceed the recorded amount of goodwill. The provisions of this standard are effective for years beginning after December 15, 2019, with early adoption permitted for any impairment test performed on testing dates after January 1, 2017. We early adopted this standard as of October 1, 2017 and this ASU did not have any impact on our financial statements or disclosures.&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;17. Subsequent event&lt;/div&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
  <!--Number of operating segments-->
  <us-gaap:NumberOfOperatingSegments contextRef="c20170101to20171231" unitRef="U004" decimals="INF">1</us-gaap:NumberOfOperatingSegments>
  <!--Thereafter-Equipment and Real Property [Member]-->
  <us-gaap:OperatingLeasesFutureMinimumPaymentsDueThereafter contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember" unitRef="U001" decimals="-3">1155000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueThereafter>
  <!--Operating Leases, Future Minimum Payments, Due in Two Years-Equipment and Real Property [Member]-->
  <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInTwoYears contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember" unitRef="U001" decimals="-3">1015000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInTwoYears>
  <!--Operating Leases, Future Minimum Payments Due, Next Twelve Months-Equipment and Real Property [Member]-->
  <us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember" unitRef="U001" decimals="-3">1000000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent>
  <!--Operating Leases, Future Minimum Payments, Due in Five Years-Equipment and Real Property [Member]-->
  <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFiveYears contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember" unitRef="U001" decimals="-3">429000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFiveYears>
  <!--Operating Leases, Future Minimum Payments, Due in Four Years-Equipment and Real Property [Member]-->
  <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFourYears contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember" unitRef="U001" decimals="-3">692000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInFourYears>
  <!--Operating Income (Loss)-->
  <us-gaap:OperatingIncomeLoss contextRef="c20170101to20171231" unitRef="U001" decimals="-3">6814000</us-gaap:OperatingIncomeLoss>
  <!--Operating Income (Loss)-->
  <us-gaap:OperatingIncomeLoss contextRef="c20160101to20161231" unitRef="U001" decimals="-3">5200000</us-gaap:OperatingIncomeLoss>
  <!--Operating Income (Loss)-->
  <us-gaap:OperatingIncomeLoss contextRef="c20150101to20151231" unitRef="U001" decimals="-3">4468000</us-gaap:OperatingIncomeLoss>
  <!--Operating Expenses-->
  <us-gaap:OperatingExpenses contextRef="c20150101to20151231" unitRef="U001" decimals="-3">20510000</us-gaap:OperatingExpenses>
  <!--Operating Expenses-->
  <us-gaap:OperatingExpenses contextRef="c20170101to20171231" unitRef="U001" decimals="-3">19848000</us-gaap:OperatingExpenses>
  <!--Operating Expenses-->
  <us-gaap:OperatingExpenses contextRef="c20160101to20161231" unitRef="U001" decimals="-3">18599000</us-gaap:OperatingExpenses>
  <!--Operating Leases, Future Minimum Payments, Due in Three Years-Equipment and Real Property [Member]-->
  <us-gaap:OperatingLeasesFutureMinimumPaymentsDueInThreeYears contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_EquipmentAndRealPropertyMember" unitRef="U001" decimals="-3">1014000</us-gaap:OperatingLeasesFutureMinimumPaymentsDueInThreeYears>
  <!--Net operating loss carryforward-Federal [Member]-->
  <us-gaap:OperatingLossCarryforwards contextRef="c20171231_IncomeTaxAuthorityAxis_DomesticCountryMember" unitRef="U001" decimals="-3">0</us-gaap:OperatingLossCarryforwards>
  <!--Net operating loss carryforward-State and Local Jurisdiction [Member]-->
  <us-gaap:OperatingLossCarryforwards contextRef="c20171231_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember" unitRef="U001" decimals="-3">0</us-gaap:OperatingLossCarryforwards>
  <!--Foreign currency translation adjustment, net of tax-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-8000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-29000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20170101to20171231" unitRef="U001" decimals="-3">10000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Retained Earnings [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Treasury Stock [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-AOCI Attributable to Parent [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">-8000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Additional Paid-in Capital [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Retained Earnings [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-AOCI Attributable to Parent [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">10000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Additional Paid-in Capital [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-AOCI Attributable to Parent [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">-29000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Retained Earnings [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Common Stock [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Common Stock [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Additional Paid-in Capital [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Common Stock [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Treasury Stock [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Foreign currency translation adjustment, net of tax-Treasury Stock [Member]-->
  <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
  <!--Other assets-->
  <us-gaap:OtherAssetsNoncurrent contextRef="c20161231" unitRef="U001" decimals="-3">36000</us-gaap:OtherAssetsNoncurrent>
  <!--Other assets-->
  <us-gaap:OtherAssetsNoncurrent contextRef="c20171231" unitRef="U001" decimals="-3">33000</us-gaap:OtherAssetsNoncurrent>
  <!--Other current assets-->
  <us-gaap:OtherAssetsCurrent contextRef="c20171231" unitRef="U001" decimals="-3">517000</us-gaap:OtherAssetsCurrent>
  <!--Other current assets-->
  <us-gaap:OtherAssetsCurrent contextRef="c20161231" unitRef="U001" decimals="-3">372000</us-gaap:OtherAssetsCurrent>
  <!--Other liabilities-->
  <us-gaap:OtherLiabilitiesNoncurrent contextRef="c20161231" unitRef="U001" decimals="-3">264000</us-gaap:OtherLiabilitiesNoncurrent>
  <!--Other liabilities-->
  <us-gaap:OtherLiabilitiesNoncurrent contextRef="c20171231" unitRef="U001" decimals="-3">247000</us-gaap:OtherLiabilitiesNoncurrent>
  <!--Other-->
  <us-gaap:OtherLiabilitiesCurrent contextRef="c20171231" unitRef="U001" decimals="-3">656000</us-gaap:OtherLiabilitiesCurrent>
  <!--Other-->
  <us-gaap:OtherLiabilitiesCurrent contextRef="c20161231" unitRef="U001" decimals="-3">350000</us-gaap:OtherLiabilitiesCurrent>
  <!--Other, net-->
  <us-gaap:OtherNonoperatingIncomeExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">2000</us-gaap:OtherNonoperatingIncomeExpense>
  <!--Other, net-->
  <us-gaap:OtherNonoperatingIncomeExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-9000</us-gaap:OtherNonoperatingIncomeExpense>
  <!--Other, net-->
  <us-gaap:OtherNonoperatingIncomeExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-4000</us-gaap:OtherNonoperatingIncomeExpense>
  <!--Payment for litigation settlement-Civil Complaint filed by Avery Dennison Corporation [Member]-Settled Litigation [Member]-->
  <us-gaap:PaymentsForLegalSettlements contextRef="c20150408to20150408_LitigationCaseAxis_CivilComplaintFiledByAveryDennisonCorporationMember_LitigationStatusAxis_SettledLitigationMember" unitRef="U001" decimals="-3">3600000</us-gaap:PaymentsForLegalSettlements>
  <!--Payments of Ordinary Dividends, Common Stock-->
  <us-gaap:PaymentsOfDividendsCommonStock contextRef="c20150101to20151231" unitRef="U001" decimals="-3">2485000</us-gaap:PaymentsOfDividendsCommonStock>
  <!--Payments of Ordinary Dividends, Common Stock-->
  <us-gaap:PaymentsOfDividendsCommonStock contextRef="c20170101to20171231" unitRef="U001" decimals="-3">2581000</us-gaap:PaymentsOfDividendsCommonStock>
  <!--Payments of Ordinary Dividends, Common Stock-->
  <us-gaap:PaymentsOfDividendsCommonStock contextRef="c20160101to20161231" unitRef="U001" decimals="-3">2416000</us-gaap:PaymentsOfDividendsCommonStock>
  <!--Payments for Repurchase of Equity-->
  <us-gaap:PaymentsForRepurchaseOfEquity contextRef="c20160101to20161231" unitRef="U001" decimals="-3">3571000</us-gaap:PaymentsForRepurchaseOfEquity>
  <!--Payments for Repurchase of Equity-->
  <us-gaap:PaymentsForRepurchaseOfEquity contextRef="c20150101to20151231" unitRef="U001" decimals="-3">1020000</us-gaap:PaymentsForRepurchaseOfEquity>
  <!--Payments for Repurchase of Equity-->
  <us-gaap:PaymentsForRepurchaseOfEquity contextRef="c20170101to20171231" unitRef="U001" decimals="-3">358000</us-gaap:PaymentsForRepurchaseOfEquity>
  <!--Payments of Financing Costs-->
  <us-gaap:PaymentsOfFinancingCosts contextRef="c20170101to20171231" unitRef="U001" decimals="-3">23000</us-gaap:PaymentsOfFinancingCosts>
  <!--Payments of Financing Costs-->
  <us-gaap:PaymentsOfFinancingCosts contextRef="c20150101to20151231" unitRef="U001" decimals="-3">0</us-gaap:PaymentsOfFinancingCosts>
  <!--Payments of Financing Costs-->
  <us-gaap:PaymentsOfFinancingCosts contextRef="c20160101to20161231" unitRef="U001" decimals="-3">0</us-gaap:PaymentsOfFinancingCosts>
  <!--Payments to Acquire Property, Plant, and Equipment-->
  <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c20170101to20171231" unitRef="U001" decimals="-3">835000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
  <!--Payments to Acquire Property, Plant, and Equipment-->
  <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c20150101to20151231" unitRef="U001" decimals="-3">959000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
  <!--Payments to Acquire Property, Plant, and Equipment-->
  <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c20160101to20161231" unitRef="U001" decimals="-3">608000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
  <!--Payments for Software-->
  <us-gaap:PaymentsForSoftware contextRef="c20170101to20171231" unitRef="U001" decimals="-3">150000</us-gaap:PaymentsForSoftware>
  <!--Payments for Software-->
  <us-gaap:PaymentsForSoftware contextRef="c20160101to20161231" unitRef="U001" decimals="-3">0</us-gaap:PaymentsForSoftware>
  <!--Payments for Software-->
  <us-gaap:PaymentsForSoftware contextRef="c20150101to20151231" unitRef="U001" decimals="-3">0</us-gaap:PaymentsForSoftware>
  <!--Preferred stock par value (in dollars per share)-->
  <us-gaap:PreferredStockParOrStatedValuePerShare contextRef="c20171231" unitRef="U003" decimals="INF">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
  <!--Preferred stock par value (in dollars per share)-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockParOrStatedValuePerShare contextRef="c20161231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U003" decimals="INF">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
  <!--Preferred stock par value (in dollars per share)-->
  <us-gaap:PreferredStockParOrStatedValuePerShare contextRef="c20161231" unitRef="U003" decimals="INF">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
  <!--Preferred stock par value (in dollars per share)-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockParOrStatedValuePerShare contextRef="c20171231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U003" decimals="INF">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
  <!--Preferred Stock, Value, Issued-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockValue contextRef="c20161231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U001" decimals="-3">0</us-gaap:PreferredStockValue>
  <!--Preferred Stock, Value, Issued-->
  <us-gaap:PreferredStockValue contextRef="c20161231" unitRef="U001" decimals="-3">0</us-gaap:PreferredStockValue>
  <!--Preferred Stock, Value, Issued-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockValue contextRef="c20171231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U001" decimals="-3">0</us-gaap:PreferredStockValue>
  <!--Preferred Stock, Value, Issued-->
  <us-gaap:PreferredStockValue contextRef="c20171231" unitRef="U001" decimals="-3">0</us-gaap:PreferredStockValue>
  <!--Preferred stock, shares issued (in shares)-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockSharesIssued contextRef="c20171231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U002" decimals="INF">0</us-gaap:PreferredStockSharesIssued>
  <!--Preferred stock, shares issued (in shares)-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockSharesIssued contextRef="c20161231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U002" decimals="INF">0</us-gaap:PreferredStockSharesIssued>
  <!--Preferred stock, shares issued (in shares)-->
  <us-gaap:PreferredStockSharesIssued contextRef="c20171231" unitRef="U002" decimals="INF">0</us-gaap:PreferredStockSharesIssued>
  <!--Preferred stock, shares issued (in shares)-->
  <us-gaap:PreferredStockSharesIssued contextRef="c20161231" unitRef="U002" decimals="INF">0</us-gaap:PreferredStockSharesIssued>
  <!--Preferred stock, shares outstanding (in shares)-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockSharesOutstanding contextRef="c20161231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U002" decimals="INF">0</us-gaap:PreferredStockSharesOutstanding>
  <!--Preferred stock, shares outstanding (in shares)-->
  <us-gaap:PreferredStockSharesOutstanding contextRef="c20161231" unitRef="U002" decimals="INF">0</us-gaap:PreferredStockSharesOutstanding>
  <!--Preferred stock, shares outstanding (in shares)-->
  <us-gaap:PreferredStockSharesOutstanding contextRef="c20171231" unitRef="U002" decimals="INF">0</us-gaap:PreferredStockSharesOutstanding>
  <!--Preferred stock, shares outstanding (in shares)-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockSharesOutstanding contextRef="c20171231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U002" decimals="INF">0</us-gaap:PreferredStockSharesOutstanding>
  <!--Preferred stock, shares authorized (in shares)-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockSharesAuthorized contextRef="c20171231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U002" decimals="INF">200000</us-gaap:PreferredStockSharesAuthorized>
  <!--Preferred stock, shares authorized (in shares)-Series A Preferred Stock [Member]-->
  <us-gaap:PreferredStockSharesAuthorized contextRef="c20161231_StatementClassOfStockAxis_SeriesAPreferredStockMember" unitRef="U002" decimals="INF">200000</us-gaap:PreferredStockSharesAuthorized>
  <!--Preferred stock, shares authorized (in shares)-->
  <us-gaap:PreferredStockSharesAuthorized contextRef="c20171231" unitRef="U002" decimals="INF">4800000</us-gaap:PreferredStockSharesAuthorized>
  <!--Preferred stock, shares authorized (in shares)-->
  <us-gaap:PreferredStockSharesAuthorized contextRef="c20161231" unitRef="U002" decimals="INF">4800000</us-gaap:PreferredStockSharesAuthorized>
  <!--Revolving credit line borrowings-->
  <us-gaap:ProceedsFromLinesOfCredit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">2500000</us-gaap:ProceedsFromLinesOfCredit>
  <!--Revolving credit line borrowings-->
  <us-gaap:ProceedsFromLinesOfCredit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:ProceedsFromLinesOfCredit>
  <!--Revolving credit line borrowings-->
  <us-gaap:ProceedsFromLinesOfCredit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">0</us-gaap:ProceedsFromLinesOfCredit>
  <!--Proceeds from stock option exercises-->
  <us-gaap:ProceedsFromStockOptionsExercised contextRef="c20170101to20171231" unitRef="U001" decimals="-3">1043000</us-gaap:ProceedsFromStockOptionsExercised>
  <!--Proceeds from stock option exercises-->
  <us-gaap:ProceedsFromStockOptionsExercised contextRef="c20160101to20161231" unitRef="U001" decimals="-3">23000</us-gaap:ProceedsFromStockOptionsExercised>
  <!--Proceeds from stock option exercises-->
  <us-gaap:ProceedsFromStockOptionsExercised contextRef="c20150101to20151231" unitRef="U001" decimals="-3">263000</us-gaap:ProceedsFromStockOptionsExercised>
  <!--Proceeds from sale of fixed assets-->
  <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
  <!--Proceeds from sale of fixed assets-->
  <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="c20150101to20151231" unitRef="U001" decimals="-3">4000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
  <!--Proceeds from sale of fixed assets-->
  <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="c20160101to20161231" unitRef="U001" decimals="-3">8000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
  <!--Property, Plant and Equipment, Policy [Policy Text Block]-->
  <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Fixed assets:&lt;/font&gt;&amp;#160;&amp;#160;Fixed assets are stated at cost.&amp;#160;&amp;#160;Depreciation is recorded using the straight-line method over the estimated useful lives.&amp;#160;&amp;#160;The estimated useful life of tooling is five years; machinery and equipment is ten years; furniture and office equipment is five to ten years; and computer software and equipment is three to seven years.&amp;#160;&amp;#160;Leasehold improvements are amortized over the shorter of the term of the lease or the useful life of the asset.&amp;#160;&amp;#160;Costs related to repairs and maintenance are expensed as incurred.&amp;#160;&amp;#160;The costs of sold or retired assets are removed from the related asset and accumulated depreciation accounts and any gain or loss is recognized.&amp;#160;&amp;#160;Depreciation expense was $844,000, $987,000 and $972,000 in 2017, 2016, and 2015, respectively.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Leases:&lt;/font&gt;&amp;#160;&amp;#160;Rent expense under non-cancelable operating leases with scheduled rent increases or free rent periods are accounted for on a straight-line basis over the lease term, beginning on the date of control of physical use of the asset or of initial possession.&amp;#160;&amp;#160;The amount of the excess of straight-line rent expense over scheduled payments is recorded as a deferred liability.&amp;#160;&amp;#160;Construction allowances and other such lease incentives are recorded as deferred credits, and are amortized on a straight-line basis as a reduction of rent expense beginning in the period they are deemed to be earned, which generally coincides with the occupancy date.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
  <!--Components of fixed assets-->
  <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The components of fixed assets, net are:&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Tooling, machinery and equipment&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;11,019&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;11,035&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Furniture and office equipment&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,651&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,630&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Computer software and equipment&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,503&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,260&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Leasehold improvements&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,475&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,361&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;21,648&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;21,286&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Less: Accumulated depreciation and amortization&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(19,752&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(19,215&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,896&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,071&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Construction in-process&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;273&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;170&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,169&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,241&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
  <!--Fixed assets, net-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20161231" unitRef="U001" decimals="-3">2241000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20171231" unitRef="U001" decimals="-3">2169000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-Fixed Assets, Excluding Construction in-Process [Member]-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_FixedAssetsExcludingConstructionInProcessMember" unitRef="U001" decimals="-3">1896000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-Fixed Assets, Excluding Construction in-Process [Member]-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20161231_PropertyPlantAndEquipmentByTypeAxis_FixedAssetsExcludingConstructionInProcessMember" unitRef="U001" decimals="-3">2071000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-Reportable Geographical Components [Member]-International [Member]-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20161231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember" unitRef="U001" decimals="-3">660000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20151231" unitRef="U001" decimals="-3">2507000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-International [Member]-Reportable Geographical Components [Member]-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20151231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember" unitRef="U001" decimals="-3">738000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-Reportable Geographical Components [Member]-United States [Member]-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20161231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US" unitRef="U001" decimals="-3">1581000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-International [Member]-Reportable Geographical Components [Member]-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20171231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember" unitRef="U001" decimals="-3">621000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-Reportable Geographical Components [Member]-United States [Member]-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20151231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US" unitRef="U001" decimals="-3">1769000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Fixed assets, net-Reportable Geographical Components [Member]-United States [Member]-->
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="c20171231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US" unitRef="U001" decimals="-3">1548000</us-gaap:PropertyPlantAndEquipmentNet>
  <!--Property, Plant and Equipment, Gross-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20161231" unitRef="U001" decimals="-3">21286000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Leasehold Improvements [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember" unitRef="U001" decimals="-3">2475000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Furniture and Office Equipment [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20161231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember" unitRef="U001" decimals="-3">1630000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Construction in-Process [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember" unitRef="U001" decimals="-3">273000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20171231" unitRef="U001" decimals="-3">21648000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Computer Software and Equipment [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20161231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember" unitRef="U001" decimals="-3">6260000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Machinery and Equipment [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20161231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember" unitRef="U001" decimals="-3">11035000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Machinery and Equipment [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember" unitRef="U001" decimals="-3">11019000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Computer Software and Equipment [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember" unitRef="U001" decimals="-3">6503000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Construction in-Process [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20161231_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember" unitRef="U001" decimals="-3">170000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Leasehold Improvements [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20161231_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember" unitRef="U001" decimals="-3">2361000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Property, Plant and Equipment, Gross-Furniture and Office Equipment [Member]-->
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="c20171231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember" unitRef="U001" decimals="-3">1651000</us-gaap:PropertyPlantAndEquipmentGross>
  <!--Fixed assets-->
  <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;4. Fixed assets&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The components of fixed assets, net are:&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Tooling, machinery and equipment&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;11,019&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;11,035&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Furniture and office equipment&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,651&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,630&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Computer software and equipment&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,503&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,260&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Leasehold improvements&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,475&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,361&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;21,648&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;21,286&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Less: Accumulated depreciation and amortization&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(19,752&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(19,215&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,896&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,071&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Construction in-process&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;273&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;170&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,169&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,241&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
  <!--Estimated useful life-Computer Software and Equipment [Member]-Minimum [Member]-->
  <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember_RangeAxis_MinimumMember">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
  <!--Estimated useful life-Furniture and Office Equipment [Member]-Minimum [Member]-->
  <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember_RangeAxis_MinimumMember">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
  <!--Estimated useful life-Tooling [Member]-->
  <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_ToolsDiesAndMoldsMember">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
  <!--Estimated useful life-Machinery and Equipment [Member]-->
  <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
  <!--Estimated useful life-Maximum [Member]-Furniture and Office Equipment [Member]-->
  <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember_RangeAxis_MaximumMember">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
  <!--Estimated useful life-Computer Software and Equipment [Member]-Maximum [Member]-->
  <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c20170101to20171231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember_RangeAxis_MaximumMember">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
  <!--Additions charged to costs and expenses-->
  <us-gaap:ProvisionForDoubtfulAccounts contextRef="c20150101to20151231" unitRef="U001" decimals="-3">7000</us-gaap:ProvisionForDoubtfulAccounts>
  <!--Additions charged to costs and expenses-->
  <us-gaap:ProvisionForDoubtfulAccounts contextRef="c20160101to20161231" unitRef="U001" decimals="-3">0</us-gaap:ProvisionForDoubtfulAccounts>
  <!--Additions charged to costs and expenses-->
  <us-gaap:ProvisionForDoubtfulAccounts contextRef="c20170101to20171231" unitRef="U001" decimals="-3">50000</us-gaap:ProvisionForDoubtfulAccounts>
  <!--Quarterly results of operations (unaudited)-->
  <us-gaap:QuarterlyFinancialInformationTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;15. Quarterly results of operations (unaudited)&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Our quarterly results of operations for 2017 and 2016 are as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="14" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Quarter Ended&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: justify; line-height: 10.25pt;"&gt;(In thousands, except per share amounts)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;March 31&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;June 30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;September 30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;2017:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net sales&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,997&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,596&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;15,524&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,194&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Gross profit&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,093&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,430&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,519&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,620&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net income (loss)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;943&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;867&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,813&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(412&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net income (loss) per common share:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Basic&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.12&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.24&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.06&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Diluted&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.12&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.24&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.06&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;2016:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net sales&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;14,357&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;14,801&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;14,474&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,603&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Gross profit&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;5,885&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;5,983&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;5,915&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net income&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;625&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;753&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;883&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,356&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net income per common share:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Basic&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.08&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.10&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.12&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.18&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Diluted&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.08&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.10&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.12&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.18&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:QuarterlyFinancialInformationTextBlock>
  <!--Receivables, Trade and Other Accounts Receivable, Allowance for Doubtful Accounts, Policy [Policy Text Block]-->
  <us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Allowance for doubtful accounts&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/font&gt;&amp;#160;&amp;#160;We establish an allowance for doubtful accounts to ensure trade receivables are valued appropriately. We maintain an allowance for doubtful accounts based on a variety of factors, including the length of time receivables are past due, significant one-time events and historical experience.&amp;#160;&amp;#160;We record a specific allowance for individual accounts when we become aware of a customer's inability to meet its financial obligations, such as in the case of bankruptcy filings or deterioration in the customer's operating results or financial position.&amp;#160;&amp;#160;If circumstances related to customers change, we would further adjust estimates of the recoverability of receivables.&amp;#160;&amp;#160;Allowances for doubtful accounts on accounts receivable balances were $100,000 and $50,000 as of December 31, 2017 and 2016, respectively.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The following table summarizes the activity recorded in the valuation account for accounts receivable:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, beginning of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;100&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Additions charged to costs and expenses&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Write-offs&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(57&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, end of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;100&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy>
  <!--Accounts receivable, net-->
  <us-gaap:ReceivablesNetCurrent contextRef="c20161231" unitRef="U001" decimals="-3">10585000</us-gaap:ReceivablesNetCurrent>
  <!--Accounts receivable, net-->
  <us-gaap:ReceivablesNetCurrent contextRef="c20171231" unitRef="U001" decimals="-3">10948000</us-gaap:ReceivablesNetCurrent>
  <!--Repayments of Lines of Credit-->
  <us-gaap:RepaymentsOfLinesOfCredit contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:RepaymentsOfLinesOfCredit>
  <!--Repayments of Lines of Credit-->
  <us-gaap:RepaymentsOfLinesOfCredit contextRef="c20160101to20161231" unitRef="U001" decimals="-3">0</us-gaap:RepaymentsOfLinesOfCredit>
  <!--Repayments of Lines of Credit-->
  <us-gaap:RepaymentsOfLinesOfCredit contextRef="c20150101to20151231" unitRef="U001" decimals="-3">2500000</us-gaap:RepaymentsOfLinesOfCredit>
  <!--Research and Development Expense, Policy [Policy Text Block]-->
  <us-gaap:ResearchAndDevelopmentExpensePolicy contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Engineering, design and product development:&lt;/font&gt;&amp;#160;&amp;#160;Research and development ("R&amp;amp;D") expenses include expenses incurred in connection with specialized engineering and design to introduce new products and to customize existing products, and are expensed as a component of operating expenses as incurred.&amp;#160;&amp;#160;We recorded $4,303,000, $4,425,000 and $3,599,000 of research and development expenses in 2017, 2016, and 2015, respectively.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Costs incurred in researching and developing a computer software product are charged to expense until technological feasibility has been established at which point all material software costs are capitalized within Intangible assets in our Consolidated Balance Sheet until the product is available for general release to customers.&amp;#160;&amp;#160;While judgment is required in determining when technological feasibility of a product is established, we have determined that it is reached after all high-risk development issues have been documented in a formal detailed plan design.&amp;#160;&amp;#160;The amortization of these costs have been included in cost of sales over the estimated life of the product.&amp;#160;&amp;#160;During 2010, we began the development of EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; and unamortized development costs for such software were $0 and $2,000 as of December 31, 2017 and 2016, respectively.&amp;#160;&amp;#160;The total amount charged to cost of sales for the amortization of capitalized software development costs was $2,000, $29,000 and $138,000 in 2017, 2016, and 2015, respectively.&lt;/div&gt;&lt;/div&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
  <!--Engineering, design and product development-->
  <us-gaap:ResearchAndDevelopmentExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">3599000</us-gaap:ResearchAndDevelopmentExpense>
  <!--Engineering, design and product development-->
  <us-gaap:ResearchAndDevelopmentExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">4425000</us-gaap:ResearchAndDevelopmentExpense>
  <!--Engineering, design and product development-->
  <us-gaap:ResearchAndDevelopmentExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">4303000</us-gaap:ResearchAndDevelopmentExpense>
  <!--Retained earnings-->
  <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c20161231" unitRef="U001" decimals="-3">24157000</us-gaap:RetainedEarningsAccumulatedDeficit>
  <!--Retained earnings-->
  <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c20171231" unitRef="U001" decimals="-3">24756000</us-gaap:RetainedEarningsAccumulatedDeficit>
  <!--Revenue recognition-->
  <us-gaap:RevenueRecognitionPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Revenue recognition:&lt;/font&gt;&amp;#160;Our typical contracts include the sale of printers and terminals, which are sometimes accompanied by separately-priced extended warranty and technical support contracts.&amp;#160;&amp;#160;We also sell replacement parts, consumables, and other repair services (sometimes pursuant to multi-year product maintenance contracts), which are not included in the original printer or terminal sale and are ordered by the customer as needed.&amp;#160;&amp;#160;We recognize revenue pursuant to the guidance within ASC 605, "Revenue Recognition" (ASC 605).&amp;#160;&amp;#160;Specifically, revenue is recognized when evidence of an arrangement exists, delivery (based on shipping terms, which are generally FOB shipping point) has occurred, the selling price is fixed or determinable, and collectability is reasonably assured.&amp;#160;&amp;#160;We recognize revenue from the sale of printers and terminals to our distributors and resellers on a sell-in basis and on substantially the same terms as we recognize revenue from all our other customers.&amp;#160;&amp;#160;We provide for an estimate of product returns and price protection based on historical experience at the time of revenue recognition.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;We also sell a software solution, EPICENTRAL&amp;#8482;, that enables casino operators to create promotional coupons and marketing messages and to print them in real-time at the slot machine.&amp;#160;&amp;#160;Revenue arrangements for EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; include multiple deliverables and as a result such arrangements are accounted for in accordance with both ASC 605-25, "Multiple-Element Arrangements" and ASC 985-605, "Software."&amp;#160;&amp;#160;EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; is primarily comprised of both a software component, which is licensed to the customer, and a hardware component.&amp;#160;&amp;#160;EPICENTRAL&amp;#8482; contains both software and hardware that are integrated to deliver the system's full functionality.&amp;#160;&amp;#160;These arrangements are accounted for in accordance with ASC 605-25, "Multiple-Element Arrangements".&amp;#160;&amp;#160;EPICENTRAL&amp;#8482; can also include an additional software offering, Mobile Host, that allows the customer to access certain applications on mobile devices.&amp;#160;&amp;#160;Mobile Host is accounted for in accordance with ASC 985-605, "Software" as Mobile Host software does not function together with the hardware device to deliver its essential functionality.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Revenue, inclusive of software license fees, is generally recognized upon installation and formal acceptance by the customer with the exception of any amount allocated to free maintenance which is deferred and recognized over the initial maintenance period, generally one year.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;For EPICENTRAL&lt;sup&gt;TM&lt;/sup&gt; and other multiple deliverable arrangements, we consider whether the&amp;#160;deliverables in an arrangement are within the scope of existing higher-level GAAP and apply such literature to the extent that it provides guidance regarding whether to separate multiple-deliverable arrangements and how to allocate value among those separate units of accounting. &amp;#160;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;&amp;#160;&lt;/font&gt;When we enter into a multiple deliverable arrangement, we also determine whether revenue arrangements consist of more than one unit of accounting.&amp;#160;&amp;#160;At that time, we allocate arrangement consideration to the separate units of accounting based on a relative selling price hierarchy, except where amounts allocable to the delivered units is limited to that which is contingent upon the delivery of additional deliverables or meeting other specified performance conditions. The relative selling price for each element is based upon the following selling price hierarchy: vendor specific objective evidence ("VSOE") if available, third party evidence ("TPE") if VSOE is not available, or best estimate of selling price ("BESP") to the extent that VSOE or TPE are not available.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Revenue related to extended warranty and product maintenance contracts is recognized pursuant to ASC 605-20-25, "Separately Priced Extended Warranty and Product Maintenance Contracts."&amp;#160;&amp;#160;Pursuant to this provision, revenue related to separately priced product maintenance contracts is deferred and recognized over the term of the maintenance period.&amp;#160;&amp;#160;We record deferred revenue for advance payments received from customers for maintenance contracts.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Our customers have the right to return products that do not function properly within a limited time after delivery.&amp;#160;&amp;#160;We monitor and track product returns and record a provision for the estimated future returns based on historical experience.&amp;#160;&amp;#160;Returns have historically been within expectations and the provisions established.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We offer some of our customers price protection as an incentive to carry inventory of our product.&amp;#160;&amp;#160;These price protection plans provide that if we lower prices, we will credit them for the price decrease on inventory they hold.&amp;#160;&amp;#160;Our customers typically carry limited amounts of inventory, and we infrequently lower prices on current products.&amp;#160;&amp;#160;As a result, the amounts paid under these plans have not been material.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We charge our customers for shipping and handling services.&amp;#160;&amp;#160;The amounts billed to customers are recorded as revenue when the product ships.&amp;#160;&amp;#160;Any costs incurred related to these services are included in cost of sales.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:RevenueRecognitionPolicyTextBlock>
  <!--Options vested or expected to vest-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1 contextRef="c20170101to20171231">P2Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
  <!--Options vested or expected to vest-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1 contextRef="c20160101to20161231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">P6Y4M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
  <!--Term of award-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
  <!--Expected option term-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c20160101to20161231_AwardTypeAxis_EmployeeStockOptionMember">P6Y10M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
  <!--Expected option term-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c20150101to20151231_AwardTypeAxis_EmployeeStockOptionMember">P6Y9M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
  <!--Expected option term-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember">P6Y9M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
  <!--Weighted average fair value of stock option grants (in dollars per share)-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="c20171231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="2">1.95</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
  <!--Weighted average fair value of stock option grants (in dollars per share)-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="c20161231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="2">1.70</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
  <!--Weighted average fair value of stock option grants (in dollars per share)-Restricted Stock Units (RSUs) [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="c20161231_AwardTypeAxis_RestrictedStockUnitsRSUMember" unitRef="U003" decimals="2">7.31</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
  <!--Weighted average fair value of stock option grants (in dollars per share)-Restricted Stock Units (RSUs) [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="c20171231_AwardTypeAxis_RestrictedStockUnitsRSUMember" unitRef="U003" decimals="2">7.53</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
  <!--Weighted average fair value of stock option grants (in dollars per share)-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="c20151231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U003" decimals="2">6.73</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested in Period, Fair Value-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1 contextRef="c20170101to20171231" unitRef="U001" decimals="-3">1104000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested in Period, Fair Value-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1 contextRef="c20160101to20161231" unitRef="U001" decimals="-3">961000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested in Period, Fair Value-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1 contextRef="c20150101to20151231" unitRef="U001" decimals="-3">944000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="c20160101to20161231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">P4Y9M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
  <!--Options exercisable, end of period-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-Stock Options [Member]-->
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1 contextRef="c20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U001" decimals="-2">2396000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20150101to20151231" unitRef="U001" decimals="-3">59676000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20170101to20171231" unitRef="U001" decimals="-3">56311000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20160101to20161231" unitRef="U001" decimals="-3">57235000</us-gaap:SalesRevenueNet>
  <!--Net sales-United States [Member]-Reportable Geographical Components [Member]-->
  <us-gaap:SalesRevenueNet contextRef="c20170101to20171231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US" unitRef="U001" decimals="-3">48720000</us-gaap:SalesRevenueNet>
  <!--Net sales-United States [Member]-Reportable Geographical Components [Member]-->
  <us-gaap:SalesRevenueNet contextRef="c20160101to20161231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US" unitRef="U001" decimals="-3">45542000</us-gaap:SalesRevenueNet>
  <!--Net sales-International [Member]-Reportable Geographical Components [Member]-->
  <us-gaap:SalesRevenueNet contextRef="c20150101to20151231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember" unitRef="U001" decimals="-3">13946000</us-gaap:SalesRevenueNet>
  <!--Net sales-Reportable Geographical Components [Member]-International [Member]-->
  <us-gaap:SalesRevenueNet contextRef="c20160101to20161231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember" unitRef="U001" decimals="-3">11693000</us-gaap:SalesRevenueNet>
  <!--Net sales-Reportable Geographical Components [Member]-International [Member]-->
  <us-gaap:SalesRevenueNet contextRef="c20170101to20171231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember" unitRef="U001" decimals="-3">7591000</us-gaap:SalesRevenueNet>
  <!--Net sales-United States [Member]-Reportable Geographical Components [Member]-->
  <us-gaap:SalesRevenueNet contextRef="c20150101to20151231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US" unitRef="U001" decimals="-3">45730000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20160101to20160331" unitRef="U001" decimals="-3">14357000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20170401to20170630" unitRef="U001" decimals="-3">13596000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20170701to20170930" unitRef="U001" decimals="-3">15524000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20161001to20161231" unitRef="U001" decimals="-3">13603000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20171001to20171231" unitRef="U001" decimals="-3">13194000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20160401to20160630" unitRef="U001" decimals="-3">14801000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20170101to20170331" unitRef="U001" decimals="-3">13997000</us-gaap:SalesRevenueNet>
  <!--Net sales-->
  <us-gaap:SalesRevenueNet contextRef="c20160701to20160930" unitRef="U001" decimals="-3">14474000</us-gaap:SalesRevenueNet>
  <!--Stock option activity-->
  <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Option activity in the 2005 Equity Incentive Plan and 2014 Equity Incentive Plan is summarized below:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table border="0" cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="7" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Stock Options&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Restricted Share Units&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Number of Shares&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Average Price*&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Number of Units&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Average Price**&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Outstanding at December 31, 2016&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,073,900&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.83&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;57,400&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.94&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Granted&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;169,500&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;65,600&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Exercised&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(182,811&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.42&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(8,300&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.44&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Forfeited&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(80,763&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(13,425&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7.98&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Expired&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(60,187&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; padding-bottom: 2px; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;9.32&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; padding-bottom: 2px; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Outstanding at December 31, 2017&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;919,639&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; padding-bottom: 4px; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;101,275&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; padding-bottom: 4px; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.21&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;*&amp;#160; &amp;#160; weighted-average exercise price per share&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 31.88%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;**&amp;#160; weighted-average grant stock price per share&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 13.85%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 0.94%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
  <!--Deferred tax assets and liabilities-->
  <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Deferred income taxes arise from temporary differences between the tax basis of assets and liabilities and their reported amounts in the Consolidated Financial Statements.&amp;#160;&amp;#160;Our deferred tax assets and liabilities were comprised of the following:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Deferred tax assets:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Foreign net operating losses&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;328&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Depreciation&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;107&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;88&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Inventory reserves&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;845&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,264&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Deferred revenue&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;16&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;31&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Warranty reserve&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;59&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;93&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Stock compensation expense&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;694&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,273&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Other accrued compensation&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;363&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;387&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Other liabilities and reserves&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;246&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;329&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 27pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Gross deferred tax assets&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,658&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,888&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 27pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Valuation allowance&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(328&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 45pt; line-height: 10.25pt; text-indent: -18pt;"&gt;Net deferred tax assets&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,330&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,465&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Deferred tax liabilities:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Other&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;22&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;33&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 36pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Net deferred tax liabilities&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;22&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;33&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Total net deferred tax assets&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,308&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,432&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
  <!--Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]-->
  <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;For 2017, 2016, and 2015, earnings per share was computed as follows (in thousands, except per share amounts):&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year Ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Net income&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,211&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,617&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,092&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Shares:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Basic:&amp;#160;&amp;#160;Weighted average common shares outstanding&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,610&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,818&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Add:&amp;#160;&amp;#160;Dilutive effect of outstanding options as determined by the treasury stock method&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;169&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;45&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;36&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Diluted:&amp;#160;&amp;#160;Weighted average common and common equivalent shares outstanding&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,592&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,655&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,854&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Net income per common share:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Basic&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.43&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.48&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.40&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt; text-indent: -9pt;"&gt;Diluted&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.42&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.47&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.39&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
  <!--Allowance for doubtful accounts-->
  <us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The following table summarizes the activity recorded in the valuation account for accounts receivable:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, beginning of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;100&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Additions charged to costs and expenses&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Write-offs&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(57&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, end of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;100&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock>
  <!--Effective tax rate reconciliation-->
  <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Differences between the U.S. statutory federal income tax rate and our effective income tax rate are analyzed below:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year Ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Federal statutory tax rate&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;34.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;34.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;34.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;U.S. corporate tax rate change&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;19.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Stock option cancellations&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.7&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Valuation allowance and tax accruals&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;State income taxes, net of federal income taxes&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Uncertain tax positions&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Miscellaneous permanent items&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1.9&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1.2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.7&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;R&amp;amp;D credit&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(3.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(4.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(4.9&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Other&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Effective tax rate&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;52.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;30.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;30.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
  <!--Components of inventories-->
  <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The components of inventories are:&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Raw materials and purchased component parts&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,322&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,298&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Work-in-process&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Finished goods&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,553&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,401&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8,875&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;9,707&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
  <!--Product warranty liability-->
  <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The following table summarizes the activity recorded in the accrued product warranty liability:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, beginning of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;277&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;287&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Warranties issued&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;259&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;254&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Warranty settlements&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(259&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(264&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(277&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, end of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;277&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
  <!--Identifiable intangible assets-->
  <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Identifiable intangible assets are recorded in Intangible assets in the accompanying Consolidated Balance Sheets and are comprised of the following:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="14" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Gross Amount&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Accumulated Amortization&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Gross Amount&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Accumulated Amortization&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Purchased technology&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,754&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1,481&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,604&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1,433&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Customer relationships&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,300&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1,300&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,300&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(1,163&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Trademark&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;480&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(306&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;480&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(257&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Covenant not to compete&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;146&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(146&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;146&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(146&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Patents&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;57&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(46&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;57&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(43&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Other&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;80&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(80&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;80&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(80&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Total&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,817&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(3,359&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,667&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(3,122&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
  <!--Net sales and fixed assets by geographic area-->
  <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Information regarding our operations by geographic area is contained in the following table.&amp;#160;&amp;#160;These amounts in the geographic area table are based on the location of the customer and asset.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year Ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Net sales:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;United States&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;48,720&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;45,542&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;45,730&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;International&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,591&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;11,693&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,946&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Total&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;56,311&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;57,235&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;59,676&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Fixed assets, net:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;United States&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,548&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,581&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,769&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;International&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;621&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;660&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;738&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Total&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,169&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,241&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,507&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock>
  <!--Assumptions used in option valuation calculations-->
  <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Under the assumptions indicated below, the weighted-average per share fair value of stock option grants for 2017, 2016, and 2015 was $1.95, $1.70 and $6.73, respectively.&amp;#160;&amp;#160;In 2017 and 2016, we also issued restricted share units for certain executives and directors that vest over a specified period of time, and in some instances require achieving certain performance metrics.&amp;#160; The weighted-average per share fair value of these restricted share units was $7.53 and $7.31 in 2017 and 2016, respectively.&amp;#160; No restricted share units were issued in 2015.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The table below indicates the key assumptions used in the option valuation calculations for options granted in 2017, 2016, and 2015 and a discussion of our methodology for developing each of the assumptions used in the valuation model:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Expected option term (in years)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.9&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Expected volatility&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;36.2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;38.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;50.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Risk-free interest rate&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2.1&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1.6&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Dividend yield&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4.3&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4.5&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4.7&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Expected Option Term&lt;/font&gt; - This is the weighted average period of time over which the options granted are expected to remain outstanding giving consideration to our historical exercise patterns.&amp;#160;&amp;#160;Options granted have a maximum term of ten years and an increase in the expected term will increase compensation expense.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Expected Volatility&lt;/font&gt; &amp;#8211; The stock volatility for each grant is measured using the weighted average of historical daily price changes of our common stock over the most recent period approximately equal to the expected option term of the grant.&amp;#160;&amp;#160;An increase in the expected volatility factor will increase compensation expense.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Risk-Free Interest Rate&lt;/font&gt; - This is the U.S. Treasury rate in effect at the time of grant having a term approximately equal to the expected term of the option.&amp;#160;&amp;#160;An increase in the risk-free interest rate will increase compensation expense.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Dividend Yield&lt;/font&gt; &amp;#8211;The dividend yield is calculated by dividing the annual dividend declared per common share by the weighted average market value of our common stock on the date of grant. An increase in the dividend yield will decrease compensation expense.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
  <!--Quarterly Financial Information [Table Text Block]-->
  <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Our quarterly results of operations for 2017 and 2016 are as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="14" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Quarter Ended&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: justify; line-height: 10.25pt;"&gt;(In thousands, except per share amounts)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;March 31&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;June 30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;September 30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;2017:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net sales&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,997&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,596&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;15,524&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,194&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Gross profit&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,093&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,430&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,519&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,620&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net income (loss)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;943&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;867&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,813&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(412&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net income (loss) per common share:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Basic&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.12&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.24&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.06&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Diluted&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.12&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.24&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(0.06&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;2016:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net sales&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;14,357&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;14,801&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;14,474&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,603&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Gross profit&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;5,885&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;5,983&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;5,915&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6,016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net income&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;625&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;753&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;883&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,356&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Net income per common share:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Basic&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.08&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.10&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.12&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.18&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 52%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Diluted&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.08&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.10&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.12&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;0.18&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
  <!--Components of income tax provision-->
  <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;The components of the income tax provision are as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year Ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Current:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Federal&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,379&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,776&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;450&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;State&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;114&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;70&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;22&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(49&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,444&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,848&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;472&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Deferred:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Federal&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,097&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(257&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;843&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;State&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;20&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(38&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;35&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;Foreign&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,117&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(295&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;878&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Income tax provision&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,561&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,553&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,350&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
  <!--Components of accrued liabilities-->
  <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The components of accrued liabilities are:&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Salaries and compensation related&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,288&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,722&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Warranty&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;186&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;169&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Professional and consulting&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;209&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;153&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Other&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;656&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;350&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;3,339&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,394&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
  <!--Concentration of risk-->
  <us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Accounts receivable from customers representing 10% or more of total accounts receivable were as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;International Gaming Technology ("IGT")&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;48&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;34&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Suzo-Happ&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;18&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Sales to customers representing 10% or more of total net sales were as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;IGT&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;35&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;26&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;29&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Suzo-Happ&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;15&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;14&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;%&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock>
  <!--Geographic area information-->
  <us-gaap:SegmentReportingDisclosureTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;14. Geographic area information&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Information regarding our operations by geographic area is contained in the following table.&amp;#160;&amp;#160;These amounts in the geographic area table are based on the location of the customer and asset.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year Ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: left; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Net sales:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;United States&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;48,720&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;45,542&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;45,730&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;International&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;7,591&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;11,693&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;13,946&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Total&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;56,311&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;57,235&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;59,676&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Fixed assets, net:&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;United States&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,548&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,581&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,769&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 9pt; line-height: 10.25pt;"&gt;International&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;621&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;660&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;738&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; margin-left: 18pt; line-height: 10.25pt;"&gt;Total&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,169&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,241&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,507&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Sales to international customers were 14%, 20%, and 23% of total sales in 2017, 2016, and 2015 respectively.&amp;#160;&amp;#160;Sales to Europe represented 44%, 56%, and 56%, sales to the Pacific Rim (which includes Australia and Asia) represented 32%, 34%, and 34%, and sales to Canada represented 18%, 8%, and 8% of total international sales in 2017, 2016, and 2015 respectively.&amp;#160;&amp;#160;International long-lived assets consist of net fixed assets located at our foreign subsidiary in the United Kingdom as well as our contract manufacturers in China, Thailand, Malaysia and Mexico.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
  <!--Segment reporting-->
  <us-gaap:SegmentReportingPolicyPolicyTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Segment reporting&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;: &lt;/font&gt;We apply the provisions of the Financial Accounting Standards Board ("FASB") Accounting Standards Codification ("ASC") 280, "Segment Reporting."&amp;#160;&amp;#160;We view our operations and manage our business as one segment: the design, development and marketing of software-driven technology and printing solutions and providing printer and terminal related software, services, supplies and spare parts.&amp;#160;&amp;#160;Factors used to identify TransAct's single operating segment include the organizational structure of the Company and the financial information available for evaluation by the chief operating decision-maker in making decisions about how to allocate resources and assess performance.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SegmentReportingPolicyPolicyTextBlock>
  <!--Selling and marketing-->
  <us-gaap:SellingAndMarketingExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">6907000</us-gaap:SellingAndMarketingExpense>
  <!--Selling and marketing-->
  <us-gaap:SellingAndMarketingExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">7806000</us-gaap:SellingAndMarketingExpense>
  <!--Selling and marketing-->
  <us-gaap:SellingAndMarketingExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">7561000</us-gaap:SellingAndMarketingExpense>
  <!--Exercised (in dollars per share)-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">6.42</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
  <!--Exercised (in dollars per share)-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice contextRef="c20170101to20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">7.44</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
  <!--Share-based compensation expense-->
  <us-gaap:ShareBasedCompensation contextRef="c20160101to20161231" unitRef="U001" decimals="-3">611000</us-gaap:ShareBasedCompensation>
  <!--Share-based compensation expense-->
  <us-gaap:ShareBasedCompensation contextRef="c20150101to20151231" unitRef="U001" decimals="-3">488000</us-gaap:ShareBasedCompensation>
  <!--Share-based compensation expense-->
  <us-gaap:ShareBasedCompensation contextRef="c20170101to20171231" unitRef="U001" decimals="-3">609000</us-gaap:ShareBasedCompensation>
  <!--Vesting period-Minimum [Member]-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MinimumMember">P2Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
  <!--Vesting period-Stock Options [Member]-Maximum [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MaximumMember">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
  <!--Share-based Compensation Arrangements by Share-based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">9.32</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice>
  <!--Share-based Compensation Arrangements by Share-based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice contextRef="c20170101to20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="0">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice>
  <!--Forfeited (in dollars per share)-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice contextRef="c20170101to20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">7.98</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
  <!--Forfeited (in dollars per share)-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">7.50</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
  <!--Granted (in dollars per share)-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">8.30</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
  <!--Granted (in dollars per share)-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice contextRef="c20170101to20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">8.30</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross contextRef="c20170101to20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">65600</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">169500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="c20171231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="0">483224</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="c20150101to20151231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="3">0.047</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="c20160101to20161231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="3">0.045</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="3">0.043</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
  <!--Expected volatility-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c20150101to20151231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="3">0.504</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
  <!--Expected volatility-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c20160101to20161231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="3">0.388</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
  <!--Expected volatility-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="3">0.362</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
  <!--Risk-free interest rate-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c20160101to20161231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="3">0.012</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
  <!--Risk-free interest rate-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="3">0.021</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
  <!--Risk-free interest rate-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c20150101to20151231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="3">0.016</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
  <!--Number of shares available for grant (in shares)-Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant contextRef="c20171231_PlanNameAxis_EquityIncentivePlan2014Member" unitRef="U002" decimals="0">665991</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
  <!--Options exercisable, end of period (in dollars per share)-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice contextRef="c20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">8.29</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
  <!--Number of shares authorized (in shares)-Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized contextRef="c20171231_PlanNameAxis_EquityIncentivePlan2014Member" unitRef="U002" decimals="0">1400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c20160101to20161231" unitRef="U001" decimals="-3">6000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c20170101to20171231" unitRef="U001" decimals="-3">958000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c20150101to20151231" unitRef="U001" decimals="-3">32000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber contextRef="c20171231" unitRef="U002" decimals="0">95135</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber contextRef="c20171231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U002" decimals="0">919639</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="c20161231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">7.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="c20161231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">7.94</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="c20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">8.21</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="c20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">8.13</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue contextRef="c20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U001" decimals="-3">4709000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue contextRef="c20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U001" decimals="-3">1261000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod contextRef="c20170101to20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">13425</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">80763</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="c20161231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">1073900</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="c20161231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">57400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-Stock Options [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="c20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">919639</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="c20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">101275</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
  <!--Options vested or expected to vest (in dollars per share)-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice contextRef="c20161231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="2">8.13</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice>
  <!--Options vested or expected to vest (in dollars per share)-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice contextRef="c20161231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U003" decimals="0">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod contextRef="c20170101to20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">60187</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
  <!--Share-based payments-->
  <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Share-based payments:&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;&amp;#160;&lt;/font&gt;At December 31, 2017, we have share-based employee compensation plans, which are described more fully in Note 10 - Stock incentive plans.&amp;#160;&amp;#160;We account for those plans under the recognition and measurement principles of ASC 718, "Compensation &amp;#8211; Stock Compensation."&amp;#160;&amp;#160;Share-based compensation expense is measured at the grant date, based on the estimated fair value of the award, and is recognized as expense over the employee's requisite service period.&amp;#160;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;We use the Black-Scholes option-pricing model to calculate the fair value of share based awards.&amp;#160;&amp;#160;The key assumptions for this valuation method include the expected term of the option, stock price volatility, risk-free interest rate, dividend yield, market price of our underlying stock and exercise price.&amp;#160;&amp;#160;Many of these assumptions are judgmental and highly sensitive in the determination of compensation expense.&amp;#160;&amp;#160;Beginning in the first quarter of 2017, we recognize forfeitures as they occur.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
  <!--Standard Product Warranty, Policy [Policy Text Block]-->
  <us-gaap:StandardProductWarrantyPolicy contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Warranty:&lt;/font&gt;&amp;#160;&amp;#160;We generally warrant our products for up to 36 months and record the estimated cost of such product warranties at the time the sale is recorded.&amp;#160;&amp;#160;Estimated warranty costs are based upon actual past experience of product repairs and the related estimated cost of labor and material to make the necessary repairs.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The following table summarizes the activity recorded in the accrued product warranty liability:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, beginning of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;277&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;287&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Warranties issued&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;259&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;254&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Warranty settlements&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(259&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(264&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(277&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, end of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;267&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;277&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;$186,000 and $169,000 of the accrued product warranty liability were classified as current in Accrued liabilities at December 31, 2017 and 2016, respectively.&amp;#160;&amp;#160;The remaining $81,000 and $98,000 of the accrued product warranty liability is classified as long-term in Other liabilities.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:StandardProductWarrantyPolicy>
  <!--Issuance of shares from exercise of stock options (in shares)-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">34600</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
  <!--Issuance of shares from exercise of stock options (in shares)-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">3750</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
  <!--Issuance of shares from exercise of stock options (in shares)-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">166600</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
  <!--Issuance of shares from exercise of stock options (in shares)-Stock Options [Member]-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">182811</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
  <!--Issuance of shares from exercise of stock options (in shares)-Equity Incentive Plan 2005 and Equity Incentive Plan 2014 [Member]-->
  <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised contextRef="c20170101to20171231_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member" unitRef="U002" decimals="0">8300</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
  <!--Authorized value of common stock to be repurchased-Maximum [Member]-New Stock Repurchase Program [Member]-->
  <us-gaap:StockRepurchaseProgramAuthorizedAmount1 contextRef="c20160225_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_NewStockRepurchaseProgramMember" unitRef="U001" decimals="-3">5000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
  <!--Authorized value of common stock to be repurchased-Subsequent Event [Member]-->
  <us-gaap:StockRepurchaseProgramAuthorizedAmount1 contextRef="c20180301_SubsequentEventTypeAxis_SubsequentEventMember" unitRef="U001" decimals="-3">5000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
  <!--Stock Issued During Period, Shares, Share-based Compensation, Net of Forfeitures-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">8663</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
  <!--Stock Issued During Period, Shares, Share-based Compensation, Net of Forfeitures-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">10700</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
  <!--Stock Issued During Period, Shares, Share-based Compensation, Net of Forfeitures-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">13988</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Retained Earnings [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Additional Paid-in Capital [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20160101to20161231" unitRef="U001" decimals="-3">51000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Retained Earnings [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Additional Paid-in Capital [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">51000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Treasury Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Treasury Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Treasury Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Retained Earnings [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20150101to20151231" unitRef="U001" decimals="-3">39000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Additional Paid-in Capital [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">39000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">23000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">263000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">1043000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Additional Paid-in Capital [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">23000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Retained Earnings [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Treasury Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Treasury Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Additional Paid-in Capital [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">262000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Retained Earnings [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Additional Paid-in Capital [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">1041000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">2000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Retained Earnings [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Treasury Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Stock Issued, Value, Stock Options Exercised, Net of Tax Benefit (Expense)-Common Stock [Member]-->
  <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
  <!--Value of common stock repurchased-Stock Repurchase Program [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c20170101to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U001" decimals="-3">358000</us-gaap:StockRepurchasedDuringPeriodValue>
  <!--Value of common stock repurchased-Stock Repurchase Program [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c20050101to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U001" decimals="-3">30110000</us-gaap:StockRepurchasedDuringPeriodValue>
  <!--Value of common stock repurchased-Stock Repurchase Program [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c20160226to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U001" decimals="-3">3929000</us-gaap:StockRepurchasedDuringPeriodValue>
  <!--Value of common stock repurchased-Stock Repurchase Program [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c20150101to20150731_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U001" decimals="-3">1020000</us-gaap:StockRepurchasedDuringPeriodValue>
  <!--Common stock repurchased (in shares)-Common Stock [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodShares contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">166553</us-gaap:StockRepurchasedDuringPeriodShares>
  <!--Common stock repurchased (in shares)-Common Stock [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodShares contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">36465</us-gaap:StockRepurchasedDuringPeriodShares>
  <!--Common stock repurchased (in shares)-Common Stock [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodShares contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="INF">463378</us-gaap:StockRepurchasedDuringPeriodShares>
  <!--Common stock repurchased (in shares)-Stock Repurchase Program [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodShares contextRef="c20160226to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U002" decimals="INF">499843</us-gaap:StockRepurchasedDuringPeriodShares>
  <!--Common stock repurchased (in shares)-Stock Repurchase Program [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodShares contextRef="c20050101to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U002" decimals="INF">3888432</us-gaap:StockRepurchasedDuringPeriodShares>
  <!--Common stock repurchased (in shares)-Stock Repurchase Program [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodShares contextRef="c20150101to20150731_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U002" decimals="INF">166553</us-gaap:StockRepurchasedDuringPeriodShares>
  <!--Common stock repurchased (in shares)-Stock Repurchase Program [Member]-->
  <us-gaap:StockRepurchasedDuringPeriodShares contextRef="c20170101to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U002" decimals="INF">36465</us-gaap:StockRepurchasedDuringPeriodShares>
  <!--Stockholders' Equity Attributable to Parent-->
  <us-gaap:StockholdersEquity contextRef="c20171231" unitRef="U001" decimals="-3">26014000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-->
  <us-gaap:StockholdersEquity contextRef="c20161231" unitRef="U001" decimals="-3">24109000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Treasury Stock [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20141231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">-25161000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Common Stock [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20141231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">111000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Additional Paid-in Capital [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20141231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">28167000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Retained Earnings [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20141231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">22349000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-->
  <us-gaap:StockholdersEquity contextRef="c20141231" unitRef="U001" decimals="-3">25394000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20141231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">-72000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-->
  <us-gaap:StockholdersEquity contextRef="c20151231" unitRef="U001" decimals="-3">25728000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Retained Earnings [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">24756000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Treasury Stock [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">-30110000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Additional Paid-in Capital [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">29701000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">-80000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">-109000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Additional Paid-in Capital [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">28921000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Retained Earnings [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">22956000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Common Stock [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">112000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Additional Paid-in Capital [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">31353000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Common Stock [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">112000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Treasury Stock [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">-29752000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Treasury Stock [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">-26181000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Common Stock [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">114000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-AOCI Attributable to Parent [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">-99000</us-gaap:StockholdersEquity>
  <!--Stockholders' Equity Attributable to Parent-Retained Earnings [Member]-->
  <us-gaap:StockholdersEquity contextRef="c20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">24157000</us-gaap:StockholdersEquity>
  <!--Subsequent event-->
  <us-gaap:SubsequentEventsTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="line-height: 11.4pt;"&gt;&lt;br style="line-height: 11.4pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;On March 1, 2018, our Board of Directors approved a new stock repurchase program (the "2018 Stock Repurchase Program") substantially similar to the 2016 Stock Repurchase Program disclosed in Note 13-Stock repurchase program , whereby we are authorized to repurchase up to $5,000,000 of our outstanding shares of common stock from time to time in the open market at prevailing market prices based on market conditions, share price and other factors.&amp;#160; The 2018 Stock Repurchase Program expires on December 31, 2019, if we do not discontinue it prior to such time.&lt;/div&gt;&lt;div style="line-height: 11.4pt;"&gt;&lt;br style="line-height: 11.4pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SubsequentEventsTextBlock>
  <!--Valuation allowance on deferred tax assets-->
  <us-gaap:SummaryOfValuationAllowanceTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;As of December 31, 2017 a valuation allowance of $328,000 has been established for foreign net operating loss carryforwards that are not expected to be used.&amp;#160;The following table summarizes the activity recorded in the valuation allowance on the deferred tax assets:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="10" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Year ended December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2015&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, beginning of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;340&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;282&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Additions charged to income tax provision&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;67&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;83&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;58&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Reductions credited to income tax provision&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(162&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 64%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Balance, end of period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;328&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;423&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;340&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SummaryOfValuationAllowanceTextBlock>
  <!--Summary of Positions for which Significant Change in Unrecognized Tax Benefits is Reasonably Possible [Table Text Block]-->
  <us-gaap:SummaryOfPositionsForWhichSignificantChangeInUnrecognizedTaxBenefitsIsReasonablyPossibleTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;At December 31, 2017 and 2016, we had $104,000 and $111,000 of total gross unrecognized tax benefits that, if recognized, would favorably affect the effective income tax rate in any future periods.&amp;#160;&amp;#160;We are not aware of any events that could occur within the next twelve months that could cause a significant change in the total amount of unrecognized tax benefits.&amp;#160;&amp;#160;A tabular reconciliation of the gross amounts of unrecognized tax benefits at the beginning and end of the year is as follows:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="6" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;December 31,&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic; text-align: justify; line-height: 10.25pt;"&gt;(In thousands)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2017&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;2016&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Unrecognized tax benefits as of January 1&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;111&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;114&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Tax positions taken during the current period&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;24&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;27&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Lapse of statute of limitations&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(31&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 2px; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;(30&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 2px solid; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 76%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Unrecognized tax benefits as of December 31&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;104&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; padding-bottom: 4px; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 9%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;111&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; border-bottom: #000000 4px double; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:SummaryOfPositionsForWhichSignificantChangeInUnrecognizedTaxBenefitsIsReasonablyPossibleTextBlock>
  <!--Tax credit carryforward-R&D Credit [Member]-->
  <us-gaap:TaxCreditCarryforwardAmount contextRef="c20171231_TaxCreditCarryforwardAxis_ResearchMember" unitRef="U001" decimals="-3">0</us-gaap:TaxCreditCarryforwardAmount>
  <!--Tax credit carryforward-State and Local Jurisdiction [Member]-->
  <us-gaap:TaxCreditCarryforwardAmount contextRef="c20171231_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember" unitRef="U001" decimals="-3">0</us-gaap:TaxCreditCarryforwardAmount>
  <!--Treasury Stock, Value-->
  <us-gaap:TreasuryStockValue contextRef="c20161231" unitRef="U001" decimals="-3">29752000</us-gaap:TreasuryStockValue>
  <!--Treasury Stock, Value-->
  <us-gaap:TreasuryStockValue contextRef="c20171231" unitRef="U001" decimals="-3">30110000</us-gaap:TreasuryStockValue>
  <!--Stock repurchase program-->
  <us-gaap:TreasuryStockTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; text-align: justify; line-height: 10.25pt;"&gt;13. Stock repurchase program&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;Prior to its expiration on December 31, 2017, we maintained a stock repurchase program (the "Stock Repurchase Program") whereby we were authorized to repurchase up to $5,000,000 of our outstanding shares of common stock from time to time in the open market at prevailing market prices based on market conditions, share price and other factors.&amp;#160; We use the cost method to account for treasury stock purchases, under which the price paid for the stock is charged to the treasury stock account.&amp;#160; Repurchases of our common stock are accounted for as of the settlement date.&amp;#160; From&amp;#160; January 1, 2017 through the expiration date of the Stock Repurchase Program, we purchased 36,465 shares of our common stock for $358,000 at an average price of $9.84 per share.&amp;#160; From the start of the Stock Repurchase Program on February 25, 2016 through December 31, 2017, we purchased 499,843 shares of our common stock for $3,929,000 at an average price of $7.86 per share.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;In 2015, under a prior repurchase program, we purchased 166,553 shares of our common stock for $1,020,000 at an average price of $6.12 per share.&amp;#160;&amp;#160;&amp;#160;From January 1, 2005 through December 31, 2017, we repurchased a total of 3,888,432 shares of common stock for $30,110,000, at an average price of $7.74 per share.&lt;/div&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&amp;#160;&lt;/div&gt;&lt;/div&gt;</us-gaap:TreasuryStockTextBlock>
  <!--Treasury stock (in shares)-->
  <us-gaap:TreasuryStockShares contextRef="c20171231" unitRef="U002" decimals="INF">3888432</us-gaap:TreasuryStockShares>
  <!--Treasury stock (in shares)-->
  <us-gaap:TreasuryStockShares contextRef="c20161231" unitRef="U002" decimals="INF">3851967</us-gaap:TreasuryStockShares>
  <!--Treasury Stock, Value, Acquired, Cost Method-AOCI Attributable to Parent [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20160101to20161231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Retained Earnings [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20170101to20171231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-AOCI Attributable to Parent [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20150101to20151231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Common Stock [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20160101to20161231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Additional Paid-in Capital [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20160101to20161231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Retained Earnings [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20160101to20161231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Treasury Stock [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20160101to20161231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">3571000</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Treasury Stock [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20170101to20171231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">358000</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Retained Earnings [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20150101to20151231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-AOCI Attributable to Parent [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20170101to20171231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Additional Paid-in Capital [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20170101to20171231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Additional Paid-in Capital [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20150101to20151231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20170101to20171231" unitRef="U001" decimals="-3">358000</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20150101to20151231" unitRef="U001" decimals="-3">1020000</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Treasury Stock [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20150101to20151231_StatementEquityComponentsAxis_TreasuryStockMember" unitRef="U001" decimals="-3">1020000</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Common Stock [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20170101to20171231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-Common Stock [Member]-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20150101to20151231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="-3">0</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock, Value, Acquired, Cost Method-->
  <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c20160101to20161231" unitRef="U001" decimals="-3">3571000</us-gaap:TreasuryStockValueAcquiredCostMethod>
  <!--Treasury Stock Acquired, Average Cost Per Share-Stock Repurchase Program [Member]-->
  <us-gaap:TreasuryStockAcquiredAverageCostPerShare contextRef="c20150101to20150731_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U003" decimals="2">6.12</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
  <!--Treasury Stock Acquired, Average Cost Per Share-Stock Repurchase Program [Member]-->
  <us-gaap:TreasuryStockAcquiredAverageCostPerShare contextRef="c20160226to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U003" decimals="2">7.86</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
  <!--Treasury Stock Acquired, Average Cost Per Share-Stock Repurchase Program [Member]-->
  <us-gaap:TreasuryStockAcquiredAverageCostPerShare contextRef="c20050101to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U003" decimals="2">7.74</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
  <!--Treasury Stock Acquired, Average Cost Per Share-Stock Repurchase Program [Member]-->
  <us-gaap:TreasuryStockAcquiredAverageCostPerShare contextRef="c20170101to20171231_ShareRepurchaseProgramAxis_StockRepurchaseProgramMember" unitRef="U003" decimals="2">9.84</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
  <!--Tax positions taken during the current period-->
  <us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease contextRef="c20160101to20161231" unitRef="U001" decimals="-3">27000</us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease>
  <!--Tax positions taken during the current period-->
  <us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease contextRef="c20170101to20171231" unitRef="U001" decimals="-3">24000</us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease>
  <!--Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations-->
  <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations contextRef="c20170101to20171231" unitRef="U001" decimals="-3">31000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
  <!--Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations-->
  <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations contextRef="c20160101to20161231" unitRef="U001" decimals="-3">30000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
  <!--Unrecognized Tax Benefits-->
  <us-gaap:UnrecognizedTaxBenefits contextRef="c20151231" unitRef="U001" decimals="-3">114000</us-gaap:UnrecognizedTaxBenefits>
  <!--Unrecognized Tax Benefits-->
  <us-gaap:UnrecognizedTaxBenefits contextRef="c20161231" unitRef="U001" decimals="-3">111000</us-gaap:UnrecognizedTaxBenefits>
  <!--Unrecognized Tax Benefits-->
  <us-gaap:UnrecognizedTaxBenefits contextRef="c20171231" unitRef="U001" decimals="-3">104000</us-gaap:UnrecognizedTaxBenefits>
  <!--Use of estimates-->
  <us-gaap:UseOfEstimates contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: justify; line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Use of estimates&lt;/font&gt;&lt;font style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/font&gt;&amp;#160;&amp;#160;The preparations of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America ("GAAP") requires management to make estimates and assumptions that affect the reported amounts of assets, liabilities, revenue and expenses, and disclosure of contingent assets and liabilities as of the date of the Consolidated Financial Statements and the reported amounts of sales and expenses during the reporting period. Actual results could differ from those estimates.&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
  <!--Additions charged to income tax provision-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense contextRef="c20160101to20161231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">83000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
  <!--Additions charged to income tax provision-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense contextRef="c20170101to20171231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">67000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
  <!--Additions charged to income tax provision-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense contextRef="c20150101to20151231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">58000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
  <!--Valuation Allowances and Reserves, Balance-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesBalance contextRef="c20151231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">340000</us-gaap:ValuationAllowancesAndReservesBalance>
  <!--Valuation Allowances and Reserves, Balance-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesBalance contextRef="c20161231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">423000</us-gaap:ValuationAllowancesAndReservesBalance>
  <!--Valuation Allowances and Reserves, Balance-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesBalance contextRef="c20141231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">282000</us-gaap:ValuationAllowancesAndReservesBalance>
  <!--Valuation Allowances and Reserves, Balance-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesBalance contextRef="c20171231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">328000</us-gaap:ValuationAllowancesAndReservesBalance>
  <!--Valuation Allowances and Reserves, Deductions-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesDeductions contextRef="c20160101to20161231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">0</us-gaap:ValuationAllowancesAndReservesDeductions>
  <!--Valuation Allowances and Reserves, Deductions-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesDeductions contextRef="c20150101to20151231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">0</us-gaap:ValuationAllowancesAndReservesDeductions>
  <!--Valuation Allowances and Reserves, Deductions-Foreign Net Operating Loss Carryforwards [Member]-->
  <us-gaap:ValuationAllowancesAndReservesDeductions contextRef="c20170101to20171231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember" unitRef="U001" decimals="-3">162000</us-gaap:ValuationAllowancesAndReservesDeductions>
  <!--Weighted Average Number of Shares Outstanding, Basic-->
  <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c20170101to20171231" unitRef="U002" decimals="-3">7423000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
  <!--Weighted Average Number of Shares Outstanding, Basic-->
  <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c20160101to20161231" unitRef="U002" decimals="-3">7610000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
  <!--Weighted Average Number of Shares Outstanding, Basic-->
  <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c20150101to20151231" unitRef="U002" decimals="-3">7818000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
  <!--Weighted Average Number of Shares Outstanding, Diluted-->
  <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c20170101to20171231" unitRef="U002" decimals="-3">7592000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
  <!--Weighted Average Number of Shares Outstanding, Diluted-->
  <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c20160101to20161231" unitRef="U002" decimals="-3">7655000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
  <!--Weighted Average Number of Shares Outstanding, Diluted-->
  <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c20150101to20151231" unitRef="U002" decimals="-3">7854000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
  <!--Interest and Other Income (Expense)-->
  <tact:InterestAndOtherIncomeExpense contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-26000</tact:InterestAndOtherIncomeExpense>
  <!--Interest and Other Income (Expense)-->
  <tact:InterestAndOtherIncomeExpense contextRef="c20160101to20161231" unitRef="U001" decimals="-3">-30000</tact:InterestAndOtherIncomeExpense>
  <!--Interest and Other Income (Expense)-->
  <tact:InterestAndOtherIncomeExpense contextRef="c20170101to20171231" unitRef="U001" decimals="-3">-42000</tact:InterestAndOtherIncomeExpense>
  <!--Increase (Decrease) in Accrued Lawsuit Settlement Expenses-->
  <tact:IncreaseDecreaseInAccruedLawsuitSettlementExpenses contextRef="c20170101to20171231" unitRef="U001" decimals="-3">0</tact:IncreaseDecreaseInAccruedLawsuitSettlementExpenses>
  <!--Increase (Decrease) in Accrued Lawsuit Settlement Expenses-->
  <tact:IncreaseDecreaseInAccruedLawsuitSettlementExpenses contextRef="c20150101to20151231" unitRef="U001" decimals="-3">-3625000</tact:IncreaseDecreaseInAccruedLawsuitSettlementExpenses>
  <!--Increase (Decrease) in Accrued Lawsuit Settlement Expenses-->
  <tact:IncreaseDecreaseInAccruedLawsuitSettlementExpenses contextRef="c20160101to20161231" unitRef="U001" decimals="-3">0</tact:IncreaseDecreaseInAccruedLawsuitSettlementExpenses>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Exercise Prices Of Options Granted Equals Percentage Of Fair Market Value Of Common Stock-Stock Options [Member]-->
  <tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePricesOfOptionsGrantedEqualsPercentageOfFairMarketValueOfCommonStock contextRef="c20170101to20171231_AwardTypeAxis_EmployeeStockOptionMember" unitRef="U005" decimals="INF">1</tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePricesOfOptionsGrantedEqualsPercentageOfFairMarketValueOfCommonStock>
  <!--Share-based Compensation Arrangement by Share-based Payment Award, Number of primary stock incentive plans-->
  <tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPrimaryStockIncentivePlans contextRef="c20170101to20171231" unitRef="U006" decimals="INF">2</tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfPrimaryStockIncentivePlans>
  <!--Share-based Compensation Arrangements by Share-based Payment Award, Options and Restricted Stock Units, Vested and Expected to Vest [Table Text Block]-->
  <tact:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsAndRestrictedStockUnitsVestedAndExpectedToVestTableTextBlock contextRef="c20170101to20171231">&lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 9pt;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;The following summarizes information about equity awards outstanding that are vested and expect to vest and equity awards that are exercisable at December 31, 2017:&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 9pt; font-family: 'Times New Roman', Times, serif; width: 100%;"&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="14" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Equity Awards Vested and Expected to Vest&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="14" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Equity Awards That Are Exercisable&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Awards&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Average Price*&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Aggregate Intrinsic Value&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Remaining Term**&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Awards&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Average Price*&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Aggregate Intrinsic Value&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"&gt;&amp;#160;&lt;/td&gt;&lt;td colspan="2" valign="bottom" style="vertical-align: bottom; border-bottom: #000000 2px solid;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: center; line-height: 10.25pt;"&gt;Remaining Term**&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; text-align: left;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 20%; vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Stock Options&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;919,639&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.13&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4,709,000&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;6.4&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;483,224&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;8.29&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2,396,000&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;4.8&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 20%; vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;Restricted stock units&lt;/div&gt;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;95,135&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;1,261,000&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;2.0&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; line-height: 10.25pt;"&gt;-&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="bottom" style="width: 20%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td valign="bottom" style="width: 7%; vertical-align: bottom; text-align: right; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="width: 1%; vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="32" valign="bottom" style="vertical-align: bottom; background-color: #ffffff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;* weighted-average exercise price per share&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left; background-color: #ffffff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="32" valign="bottom" style="vertical-align: bottom; background-color: #cceeff;"&gt;&lt;div style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; text-align: left; line-height: 10.25pt;"&gt;** weighted-average contractual remaining term in years&lt;/div&gt;&lt;/td&gt;&lt;td nowrap="nowrap" valign="bottom" style="vertical-align: bottom; text-align: left; background-color: #cceeff;"&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;br style="line-height: 10.25pt;" /&gt;&lt;/div&gt;&lt;div style="line-height: 10.25pt;"&gt;&lt;font style="font-size: 10pt;"&gt;Shares that are issued upon exercise of employee stock awards are newly issued shares and not issued from treasury stock.&amp;#160;&amp;#160;As of December 31, 2017, unrecognized compensation cost related to non-vested equity awards granted under our stock incentive plans is approximately $899,000, which is expected to be recognized over a weighted average period of 2.6 years&lt;/font&gt;.&lt;/div&gt;&lt;/div&gt;</tact:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsAndRestrictedStockUnitsVestedAndExpectedToVestTableTextBlock>
  <!--Line of Credit Facility, Loans Used to Fund Future Cash Dividend Payments or Treasury Share Buybacks-TD Bank, N.A. [Member]-Revolving Credit Facility [Member]-->
  <tact:LineOfCreditFacilityLoansUsedToFundFutureCashDividendPaymentsOrTreasuryShareBuybacks contextRef="c20171122_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember" unitRef="U001" decimals="-3">12500000</tact:LineOfCreditFacilityLoansUsedToFundFutureCashDividendPaymentsOrTreasuryShareBuybacks>
  <!--Line of Credit Facility, Loans Used to Fund Future Cash Dividend Payments or Treasury Share Buybacks-Revolving Credit Facility [Member]-TD Bank, N.A. [Member]-->
  <tact:LineOfCreditFacilityLoansUsedToFundFutureCashDividendPaymentsOrTreasuryShareBuybacks contextRef="c20141126_CreditFacilityAxis_RevolvingCreditFacilityMember_LineOfCreditFacilityAxis_TDBankNAMember" unitRef="U001" decimals="-3">10000000</tact:LineOfCreditFacilityLoansUsedToFundFutureCashDividendPaymentsOrTreasuryShareBuybacks>
  <!--Extended Product Warranty Period-Maximum [Member]-->
  <tact:ExtendedProductWarrantyPeriod contextRef="c20170101to20171231_RangeAxis_MaximumMember">P36M</tact:ExtendedProductWarrantyPeriod>
</xbrl>
