<SEC-DOCUMENT>0001171843-17-006795.txt : 20171109
<SEC-HEADER>0001171843-17-006795.hdr.sgml : 20171109
<ACCEPTANCE-DATETIME>20171109091900
ACCESSION NUMBER:		0001171843-17-006795
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		60
CONFORMED PERIOD OF REPORT:	20170930
FILED AS OF DATE:		20171109
DATE AS OF CHANGE:		20171109

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			UFP TECHNOLOGIES INC
		CENTRAL INDEX KEY:			0000914156
		STANDARD INDUSTRIAL CLASSIFICATION:	PLASTICS FOAM PRODUCTS [3086]
		IRS NUMBER:				042314970
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-12648
		FILM NUMBER:		171188520

	BUSINESS ADDRESS:	
		STREET 1:		100 HALE STREET
		CITY:			NEWBURYPORT
		STATE:			MA
		ZIP:			01950
		BUSINESS PHONE:		978-352-2200

	MAIL ADDRESS:	
		STREET 1:		100 HALE STREET
		CITY:			NEWBURYPORT
		STATE:			MA
		ZIP:			01950
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>f10q_110917p.htm
<DESCRIPTION>FORM 10-Q
<TEXT>
<HTML><HEAD>
     <TITLE></TITLE>
</HEAD><BODY STYLE="font: 10pt Times New Roman, Times, Serif">





<p style="margin: 0">&nbsp;</p>

<p style="margin: 0"></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">UNITED STATES SECURITIES AND EXCHANGE COMMISSION</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">Washington, DC 20549</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b>FORM 10-Q</b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b>&nbsp;</b></p>

<p style="margin: 0pt 0; font-size: 10pt; line-height: 150%">(Mark one)</p>

<p style="margin: 0pt 0 0pt 22.5pt; font-size: 10pt; text-indent: -22.5pt">[X] QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d)
OF THE SECURITIES EXCHANGE ACT OF 1934</p>

<p style="margin: 0pt 0 0pt 100pt; font-size: 10pt; text-indent: -20pt">For the quarterly period ended <u>&nbsp;&nbsp;&nbsp;<font style="text-transform: uppercase"><b>SEPTEMBER
30, 2017&nbsp;&nbsp; </b></font></u></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">OR</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0 0pt 0.25in; font-size: 10pt; text-indent: -0.25in">[ ] TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d)
OF THE SECURITIES EXCHANGE ACT OF 1934</p>

<p style="margin: 0pt 0 0pt 40pt; font-size: 10pt; text-indent: 40pt">For the transition period from ____ to ____</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Commission File Number: <b><u>001-12648</u></b></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b><u>UFP Technologies, Inc.</u></b></p>

<p style="margin: 0pt 0; font-size: 10pt; line-height: 150%; text-align: center">(Exact name of registrant as specified in its
charter)</p>

<table cellspacing="0" cellpadding="0" style="font-size: 10pt; width: 100%; border-collapse: collapse">
<tr style="vertical-align: top">
    <td style="width: 50%; font-size: 10pt; text-align: center"><font style="font-size: 10pt"><b><u>Delaware</u></b></font></td>
    <td style="width: 50%; font-size: 10pt; text-align: center"><font style="font-size: 10pt"><b><u>04-2314970</u></b></font></td></tr>
<tr style="vertical-align: top">
    <td style="font-size: 10pt; text-align: center"><font style="font-size: 10pt">(State or other jurisdiction of incorporation or organization)</font></td>
    <td style="font-size: 10pt; text-align: center"><font style="font-size: 10pt">(IRS Employer Identification No.)</font></td></tr>
</table>
<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b>&nbsp;</b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b><u>100 Hale Street, Newburyport, MA 01950, USA</u></b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">(Address of principal executive offices) (Zip Code)</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b><u>(978) 352-2200</u></b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">(Registrant's telephone number, including area code)</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">_________________________________________</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">(Former name, former address, and former fiscal year, if changed
since last report)</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Indicate by check mark whether the registrant (1) has filed all reports required to be
filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period
that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.</p>

<p style="margin: 0pt 0 0pt 0.3in; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 0.3in; font-size: 10pt">Yes <u>&nbsp;&nbsp; X&nbsp;&nbsp; </u>; No ____</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"><font style="color: windowtext">Indicate by check mark whether the registrant has submitted
electronically and posted on its corporate website, if any, every Interactive Data File required to be submitted and posted pursuant
to Rule 405 of Regulation S-T</font> (&#167;232.405 of this chapter) <font style="color: windowtext">during the preceding 12 months
(or for such shorter period that the registrant was required to submit and post such files).</font></p>

<p style="margin: 0pt 0 0pt 0.3in; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 0.3in; font-size: 10pt">Yes <u>&nbsp;&nbsp; X&nbsp;&nbsp;  </u>; No ____</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated
filer, a non-accelerated filer, smaller reporting company, or an emerging growth company. See the definitions of &#8220;large accelerated
filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and &#8220;emerging growth company&#8221;
in Rule&nbsp;12b-2 of the Exchange Act.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font: 10pt Times New Roman, Times, Serif; width: 100%">
<tr style="vertical-align: top; text-align: left">
    <td style="width: 3%">&nbsp;</td>
    <td style="width: 20%">Large accelerated filer</td>
    <td style="width: 5%">&nbsp;</td>
    <td style="width: 72%">&#9744;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>Accelerated filer </td>
    <td>&nbsp;</td>
    <td>&#9746; </td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>Non&#8211;accelerated filer</td>
    <td>&nbsp;</td>
    <td>&#9744;
[Do not check if a smaller reporting company]</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>Smaller reporting company</td>
    <td>&nbsp;</td>
    <td>&#9744;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>Emerging growth company</td>
    <td>&nbsp;</td>
    <td>&#9744;</td></tr>
</table>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 202.5pt; font-size: 10pt; text-indent: -184.5pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">If an emerging growth company, indicate by checkmark if the registrant has elected not
to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to
Section 13(a) of the Exchange Act. &#9744;</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Indicate by check mark whether the registrant is a shell company (as defined in Rule
12b-2 of the Exchange Act).</p>

<p style="margin: 0pt 0 0pt 0.3in; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 0.3in; font-size: 10pt">Yes ____; No <u>&nbsp;&nbsp; X&nbsp;&nbsp; </u></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">7,267,662 shares of registrant&#8217;s Common Stock, $0.01 par value, were outstanding
as of November 6, 2017.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 1 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin: 0pt">&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b>UFP Technologies, Inc.</b></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b><u>Index</u></b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: right">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: left"></p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; border-collapse: collapse; font-size: 10pt">
<tr>
    <td style="vertical-align: middle">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center"><u>Page</u></td></tr>
<tr>
    <td style="vertical-align: middle">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle; width: 92%"><a href="#a_001">PART I - FINANCIAL INFORMATION</a></td>
    <td style="vertical-align: bottom; width: 8%; text-align: center"><a href="#a_001">3</a></td></tr>
<tr>
    <td style="vertical-align: middle">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 10pt"><a href="#a_002">Item 1. Financial Statements</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_002">3</a></td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 10pt">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 50pt; text-indent: -30pt"><a href="#a_003">Condensed Consolidated Balance Sheets as of September 30, 2017
    (unaudited) and December 31, 2016</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_003">3</a></td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 50pt; text-indent: -30pt">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 40pt; text-indent: -20pt"><a href="#a_004">Condensed Consolidated Statements of Income for the Three and Nine
    Months Ended September 30, 2017 and September 30, 2016 (unaudited)</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_004">4</a></td>
</tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 40pt; text-indent: -20pt">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 40pt; text-indent: -20pt"><a href="#a_005">Condensed Consolidated Statements of Cash Flows for the Nine Months
    Ended September 30, 2017 and September 30, 2016 (unaudited)</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_005">5</a></td>
</tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 40pt; text-indent: -20pt">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 40pt; text-indent: -20pt"><a href="#a_006">Notes to Interim Condensed Consolidated Financial Statements</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_006">6</a></td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 40pt; text-indent: -20pt">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 10pt"><a href="#a_007">Item 2. Management's Discussion and Analysis of Financial Condition and
    Results of Operations</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_007">12</a></td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 10pt">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 10pt"><a href="#a_008">Item 3. Quantitative and Qualitative Disclosures about Market Risk</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_008">17</a></td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 10pt">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 10pt"><a href="#a_009">Item 4. Controls and Procedures</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_009">17</a></td></tr>
<tr>
    <td style="vertical-align: middle; text-align: left; padding-left: 10pt">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle"><a href="#a_010">PART II - OTHER INFORMATION</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_010">17</a></td></tr>
<tr>
    <td style="vertical-align: middle">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr style="vertical-align: middle">
    <td style="text-align: left; padding-left: 10pt"><a href="#a_011">Item 1A. Risk Factors</a></td>
    <td style="text-align: center"><a href="#a_011">17</a></td></tr>
<tr style="vertical-align: middle">
    <td style="text-align: left; padding-left: 10pt">&nbsp;</td>
    <td style="text-align: center">&nbsp;</td></tr>
<tr style="vertical-align: middle">
    <td style="text-align: left; padding-left: 10pt"><a href="#a_012">Item 2. Unregistered Sales of Equity Securities and Use of Proceeds</a></td>
    <td style="text-align: center"><a href="#a_012">17</a></td></tr>
<tr style="vertical-align: middle">
    <td style="text-align: left; padding-left: 10pt">&nbsp;</td>
    <td style="text-align: center">&nbsp;</td></tr>
<tr style="vertical-align: middle">
    <td style="text-align: left; padding-left: 10pt"><a href="#a_015">Item 6. Exhibits</a></td>
    <td style="text-align: center"><a href="#a_015">17</a></td></tr>
<tr style="vertical-align: middle">
    <td style="text-align: left; padding-left: 10pt">&nbsp;</td>
    <td style="text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle"><a href="#a_013">Signatures</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_013">18</a></td></tr>
<tr>
    <td style="vertical-align: middle">&nbsp;</td>
    <td style="vertical-align: bottom; text-align: center">&nbsp;</td></tr>
<tr>
    <td style="vertical-align: middle"><a href="#a_014">Exhibit Index</a></td>
    <td style="vertical-align: bottom; text-align: center"><a href="#a_014">18</a></td></tr>
</table>


<p style="margin: 0pt 0; font-size: 10pt; text-align: left"></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: left">&nbsp;</p>

<p style="margin: 0pt 0.9pt 0pt 0; font-size: 10pt; text-align: right"></p>

<p style="margin: 0pt 1.7in 0pt 0; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 2 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin: 0pt">&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 1.7in 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 1.7in 0pt 0; font-size: 10pt"></p>

<table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 0"></td>
    <td style="width: 63pt"><b><a name="a_001"></a>PART I:</b></td>
    <td><b>FINANCIAL INFORMATION</b></td></tr>
</table>

<p style="margin: 0pt 1.7in 0pt 0; font-size: 10pt"></p>

<p style="margin: 0pt 1.7in 0pt 0; font-size: 10pt"></p>

<table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 0"></td>
    <td style="width: 63pt"><b><a name="a_002"></a>ITEM 1:</b></td>
    <td><b>FINANCIAL STATEMENTS</b></td></tr>
</table>

<p style="margin: 0pt 1.7in 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b>UFP Technologies, Inc.</b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><a name="a_003"></a><b>Condensed Consolidated Balance Sheets</b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">(In thousands, except share data)</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"></p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<div data-td-taggable-table="" data-td-statement-type="balance-sheet"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; font-weight: bold">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,<br> 2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"><p style="margin-top: 0; margin-bottom: 0">December 31,</p>
                                                                                <p style="margin-top: 0; margin-bottom: 0">2016</p></td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; font-weight: bold; text-align: center">Assets</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; text-align: center">(Unaudited)</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; text-align: center">&nbsp;</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt">Current assets:</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; text-align: right">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; font-size: 10pt; text-align: left; padding-left: 10pt">Cash and cash equivalents</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">37,246</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">31,359</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 20pt; text-indent: -10pt">Receivables, less allowance for doubtful accounts of $602 at September 30, 2017 and $567 at December 31, 2016</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">22,044</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">21,249</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Inventories</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">13,136</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">14,151</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Prepaid expenses</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">2,234</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">2,281</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 10pt">Refundable income taxes</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">979</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">807</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 20pt">Total current assets</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">75,639</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">69,847</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Property, plant and equipment</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">103,797</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">96,806</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 10pt">Less accumulated depreciation and amortization</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(51,815</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(48,290</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 20pt">Net property, plant and equipment</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">51,982</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">48,516</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt">Goodwill</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,322</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,322</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Intangible assets, net</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">79</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">318</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Other assets</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">2,069</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">1,931</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 20pt">Total assets</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">137,091</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">127,934</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; font-weight: bold; text-align: center">Liabilities and Stockholders&#8217; Equity</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Current liabilities:</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Accounts payable</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">4,958</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">4,002</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Accrued expenses</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">5,356</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">4,698</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 10pt">Short-term debt</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">84</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">856</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 20pt">Total current liabilities</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">10,398</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">9,556</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 0pt">Deferred income taxes</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">3,713</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">3,459</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Non-qualified deferred compensation plan</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">1,949</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">1,682</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Other liabilities</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">118</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">184</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 20pt">Total liabilities</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">16,178</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">14,881</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Commitments and contingencies</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Stockholders&#8217; equity:</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 20pt; text-indent: -10pt">Preferred stock, $.01 par value, 1,000,000 shares authorized; zero shares
    issued or outstanding</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">-</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">-</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 20pt; text-indent: -10pt">Common stock, $.01 par value, 20,000,000 shares authorized; 7,299,721 and
    7,270,162 shares issued and outstanding, respectively at September 30, 2017; and 7,242,023 and 7,212,464 shares issued and
    outstanding, respectively at December 31, 2016</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">73</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">72</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Additional paid-in capital</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">26,580</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">25,216</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Retained earnings</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">94,847</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">88,352</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; padding-left: 10pt; text-indent: -10pt; padding-bottom: 1pt">Treasury stock at cost, 29,559 shares at September 30, 2017 and December 31, 2016</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left; border-bottom: Black 1pt solid">&nbsp;</td><td style="font-size: 10pt; text-align: right; border-bottom: Black 1pt solid">(587</td><td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left; border-bottom: Black 1pt solid">&nbsp;</td><td style="font-size: 10pt; text-align: right; border-bottom: Black 1pt solid">(587</td><td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 20pt">Total stockholders&#8217; equity</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">120,913</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">113,053</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt">Total liabilities and stockholders' equity</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">137,091</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">127,934</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>



<p style="margin: 0pt 0; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">The accompanying notes are an integral part of these condensed consolidated financial
statements.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 3; Options: NewSection; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->3<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b>UFP Technologies, Inc.</b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b><a name="a_004"></a>Condensed Consolidated Statements of Income</b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">(In thousands, except per share data)</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">(Unaudited)</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<p style="color: red; font-size: 10pt; margin: 0pt 0"></p>

<div data-td-taggable-table="" data-td-statement-type="income"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended <br>September 30</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br> September 30</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 40%; font-size: 10pt; text-align: left">Net sales</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">35,684</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">37,220</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">110,623</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">109,626</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; padding-bottom: 1pt">Cost of sales</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">27,491</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">28,768</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">82,973</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">83,161</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Gross profit</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">8,193</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">8,452</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">27,650</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">26,465</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Selling, general &amp; administrative expenses</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">5,693</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">6,027</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">18,070</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">18,402</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Restructuring costs</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">-</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">25</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">63</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">203</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Material overcharge settlement</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">-</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(1,681</td><td style="font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(121</td><td style="font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(2,114</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Loss (Gain) on sale of fixed assets</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">-</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">-</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">3</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(4</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Operating income</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">2,500</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">4,081</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">9,635</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">9,978</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Interest income</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">63</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">42</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">147</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">104</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Interest expense</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(12</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(17</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(39</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(53</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Income before income tax expense</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">2,551</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">4,106</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">9,743</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">10,029</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Income tax expense</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">856</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">1,437</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">3,248</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">3,550</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt">Net income</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">1,695</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">2,669</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">6,495</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">6,479</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; font-style: italic; text-align: left">Net income per share:</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Basic</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">0.23</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">0.37</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">0.90</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">0.90</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Diluted</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">0.23</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">0.37</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">0.89</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">0.89</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; font-style: italic; text-align: left">Weighted average common shares outstanding:</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Basic</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,264</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,195</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,240</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,183</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Diluted</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,353</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,282</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,326</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,265</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>



<p style="color: red; font-size: 10pt; margin: 0pt 0"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">The accompanying notes are an integral part of these condensed consolidated financial
statements.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 4; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->4<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b>UFP Technologies, Inc.</b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><a name="a_005"></a><b>Condensed Consolidated Statements of Cash Flows</b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">(In thousands)</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">(Unaudited)</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<div data-td-taggable-table="" data-td-statement-type="cash-flows"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br> September 30</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; font-weight: bold">Cash flows from operating activities:</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; text-align: right">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; font-size: 10pt; text-align: left">Net income</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">6,495</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">6,479</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt; text-indent: -10pt">Adjustments to reconcile net income to net cash provided by operating activities:</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Depreciation and amortization</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">4,171</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">4,109</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Loss (Gain) on sale of fixed assets</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">3</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(4</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Share-based compensation</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">842</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">871</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Excess tax benefit on share-based compensation</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">-</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(126</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Deferred income taxes</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">254</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">224</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Changes in operating assets and liabilities:</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Receivables, net</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(795</td><td style="font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(4,826</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Inventories</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">1,015</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(366</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Prepaid expenses</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">47</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(1,231</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Refundable income taxes</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(172</td><td style="font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">1,146</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Other assets</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(138</td><td style="font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(93</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Accounts payable</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">429</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">197</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Accrued expenses</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">658</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(317</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 20pt; text-indent: -10pt">Non-qualified deferred compensation plan and other liabilities</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">201</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">205</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; font-weight: bold; text-align: left; padding-bottom: 1pt; padding-left: 20pt">Net cash provided by operating activities</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">13,010</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">6,268</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; font-weight: bold; text-align: left">Cash flows from investing activities:</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Additions to property, plant and equipment</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(6,880</td><td style="font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(5,766</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 10pt">Proceeds from sale of fixed assets</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">6</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">4</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; font-weight: bold; text-align: left; padding-bottom: 1pt; padding-left: 20pt">Net cash used in investing activities</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(6,874</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(5,762</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; font-weight: bold; text-align: left">Cash flows from financing activities:</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Principal repayments of long-term debt</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(772</td><td style="font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(758</td><td style="font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Proceeds from exercise of stock options, net of attestation</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">630</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">529</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Excess tax benefit on share-based compensation</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">-</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">126</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt; padding-left: 20pt; text-indent: -10pt">Payment of statutory withholdings for stock options exercised and restricted stock units vested</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(107</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(89</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; font-weight: bold; text-align: left; padding-bottom: 1pt; padding-left: 20pt">Net cash used in financing activities</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(249</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(192</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Net increase in cash and cash equivalents</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">5,887</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">314</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; font-weight: bold; text-align: left; padding-bottom: 1pt; padding-left: 20pt">Cash and cash equivalents at beginning of period</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">31,359</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">29,804</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; font-weight: bold; text-align: left; padding-bottom: 2.25pt; padding-left: 20pt">Cash and cash equivalents at end of period</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">37,246</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">30,118</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>



<p style="margin: 0pt 0; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">The accompanying notes are an integral part of these condensed consolidated financial
statements.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 5; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->5<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><a name="a_006"></a><b>Notes to Interim Condensed Consolidated Financial Statements</b></p>

<p style="font-size: 10pt; margin: 0pt 0"><b>&nbsp;</b></p>

<div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 27pt"><b>(1)</b></td><td><b>Basis of Presentation</b></td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The interim condensed consolidated financial statements of UFP Technologies,&nbsp;Inc.
(the &#8220;Company&#8221;) presented herein, have been prepared pursuant to the rules&nbsp;of the Securities and Exchange Commission
for quarterly reports on Form&nbsp;10-Q and do not include all the information and note disclosures required by accounting principles
generally accepted in the United States of America. These statements should be read in conjunction with the consolidated financial
statements and notes thereto for the year ended December 31, 2016, included in the Company's 2016 Annual Report on Form&nbsp;10-K,
as filed with the Securities and Exchange Commission.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The condensed consolidated balance sheet as of September 30, 2017, the condensed
consolidated statements of income for the three- and nine-month periods ended September 30, 2017 and 2016, and the condensed consolidated
statements of cash flows for the nine-month periods ended September 30, 2017 and 2016 are unaudited but, in the opinion of management,
include all adjustments (consisting of normal, recurring adjustments) necessary for a fair presentation of results for these interim
periods. The condensed consolidated balance sheet as of December 31, 2016 has been derived from the Company&#8217;s annual financial
statements that were audited by an independent registered public accounting firm, but does not include all of the information and
footnotes required for complete annual financial statements.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The preparation of financial statements in conformity with accounting principles
generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported
amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and
the reported amounts of revenues and expenses during the reporting period.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The results of operations for the three- and nine-months periods ended
September 30, 2017, are not necessarily indicative of the results to be expected for the entire fiscal year ending December
31, 2017.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"><i>Recent Accounting Pronouncements</i></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"><i>&nbsp;</i></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">In May 2014, the Financial Accounting Standards Board (FASB) issued
Accounting Standards Update (ASU) No. 2014-09, <i>Revenue from Contracts with Customers</i>, which requires an entity to
recognize the amount of revenue to which it expects to be entitled for the transfer of promised goods or services to
customers. This standard will replace most existing revenue recognition guidance when it becomes effective. The standard
permits the use of either the full retrospective or modified retrospective transition methods. The Company expects to adopt
the standard in the first quarter of 2018 using the modified retrospective transition method. The Company has identified its
primary revenue streams, completed a preliminary review of a representative sample of contracts with its customers and is in
the process of evaluating the impact of this ASU on its revenue streams and accounting policies. Based on the procedures
completed to date, the Company expects that for a significant portion of its business, the recognition of revenue under the
updated standard will occur at a point in time, which is consistent with current practice. The Company has identified certain
revenue streams for which the recognition of revenue may occur over time, which is a change from current practice. These
revenue streams include certain customer stocking commitments. Additionally, the Company has identified certain revenue
streams for which the recognition of revenue may be deferred, which is also a change from current practice. These revenue
streams include certain tooling sales. The Company does not expect that the impact
of these changes in the timing of revenue recognition for these items to be significant to the financial statements. The
Company is also in the process of updating its internal controls and drafting the expanded disclosures as required by this
ASU. <font style="color: windowtext">The Company does not expect significant changes to its systems or internal controls. As
the Company continues thr</font>ough the adoption process, it is possible that these preliminary conclusions may change.</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">In February 2016, the FASB issued ASU No.&nbsp;2016-02, <i>Leases.</i> The
guidance in this ASU supersedes the leasing guidance in Topic 840, <i>Leases</i>. Under the new guidance, lessees are required
to recognize lease assets and lease liabilities on the balance sheet for those leases previously classified as operating leases.
The amendments in ASU No.&nbsp;2016-02 are effective for annual reporting periods beginning after December&nbsp;15, 2018, including
interim periods within that reporting period with early adoption permitted. The Company is evaluating the impact of adopting this
ASU on its consolidated financial position and results of operations.</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">In March 2016, the FASB issued ASU No. 2016-09, <i>Improvements to Employee
Share Based Payment Accounting</i>. This ASU simplifies several aspects of the accounting for share-based payment transactions,
including income tax consequences, classification of awards, forfeitures and classification on the statement of cash flows. The
Company adopted this ASU on January 1, 2017. As the Company has not had a significant amount of forfeitures historically, under
the provisions of this ASU the Company has elected to account for forfeitures as they occur, rather than estimate expected forfeitures.
The impact of adopting this update to the Company&#8217;s Consolidated Financial Statements will depend on market factors and the
timing and intrinsic value of future share-based compensation award vests and exercises. Subsequent to adoption, the Company notes
the potential for volatility in its effective tax rate as any windfall or shortfall tax benefits related to its share-based compensation
plans will be recorded directly to income tax expense in the Condensed Consolidated Statement of Income.</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 6; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->6<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"><i>Revisions</i></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">Certain revisions have been made to the 2016 Condensed Consolidated Statement
of Cash Flows to conform to the current year presentation relating to a reserve for uncertain tax positions and to cash paid for
capital expenditures. The reclassification of a reserve for uncertain tax positions resulted in an increase to the change in refundable
income taxes of $315,000 and a decrease to the change in accrued expenses of $315,000. A change in presentation of cash paid for
capital expenditures resulted in a decrease of $311,000 in both the change in accounts payable and in additions to property, plant
and equipment, net. These revisions had no impact on previously reported net income and are deemed immaterial to the previously
issued financial statements.</p></div><p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 27pt"><b>(2)</b></td><td><b>Supplemental Cash Flow Information</b></td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 95%; margin: 0pt 0pt 0pt 27pt">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br> September 30</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; font-style: italic; text-align: right">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; font-style: italic; text-align: right">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; text-align: center">(in thousands)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Cash paid for:</td><td style="font-size: 10pt; font-weight: bold">&nbsp;</td>
    <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; text-align: right">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td><td style="font-size: 10pt; font-weight: bold">&nbsp;</td>
    <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; text-align: right">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="width: 70%; font-size: 10pt; padding-left: 10pt">Interest</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">37</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">51</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Income taxes, net of refunds</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">3,167</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">2,178</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-left: 0pt">Non-cash investing and financing activities:</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Capital additions accrued but not yet paid</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">527</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">311</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>





<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p></div><p style="margin: 0pt 0; font-size: 10pt"></p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 27pt"><b></b></td></tr></table><div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top"><td style="width: 27pt"><b>(3)</b></td><td><b>Fair Value of Financial Instruments</b></td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"><font style="color: windowtext">The Company has financial instruments, such
as accounts receivable, accounts payable, and accrued expenses, which are stated at carrying amounts that approximate fair value
because of the short maturity of those instruments. The carrying amount of the Company&#8217;s long-term debt approximates fair
value as the interest rate on the debt approximates the estimated borrowing rate currently available to the Company</font>.</p></div><p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 27pt"><b>(4)</b></td><td><b>Share-Based Compensation</b></td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">Share-based compensation is measured at the grant date based on the fair value
of the award and is recognized as an expense over the requisite service period (generally the vesting period of the equity grant).</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The Company issues share-based awards through several plans that are described
in detail in the notes to the consolidated financial statements for the year ended December 31, 2016. The compensation cost charged
against income for those plans is included in selling, general &amp; administrative expenses as follows (in thousands):</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 7; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->7<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 27.9pt 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 27.9pt 0pt 27pt; font-size: 10pt"></p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 95%; margin: 0pt 0pt 0pt 27pt">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; color: #8497B0; text-align: center">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended<br> September 30,</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br> September 30,</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid">Share-based compensation related to:</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 40%; font-size: 10pt; text-align: left">Common stock granted to the Board of Directors</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">-</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">-</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">105</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">105</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Common stock granted to the Chief Executive Officer</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">100</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">100</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">300</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">300</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Stock options granted to directors</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">-</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">-</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">105</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">105</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Stock options granted to employees</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">4</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">34</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">25</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">107</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Restricted Stock Unit awards to employees</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">102</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">95</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">307</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">254</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt">Total share-based compensation</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">206</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">229</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">842</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">871</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>






<p style="margin: 0pt 27.9pt 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt; text-align: center"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The total income tax benefit recognized in the condensed consolidated statements
of income for share-based compensation arrangements was approximately $106,000 and $67,000, respectively, for the three-month periods
ended <font style="color: windowtext">September 30, 2017 and 2016, and approximately $441,000 and $264,000, respectively, for the
nine-month periods ended September 30, 2017 and 2016</font>.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The following is a summary of stock option activity under all plans for the
three-month period ended <font style="color: windowtext">September 30, 2017</font>:</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 95%; margin: 0pt 0pt 0pt 27pt">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; text-align: center"><b>&nbsp;</b></td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"><b>&nbsp;</b></td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"><p style="margin-top: 0; margin-bottom: 0"><b>Shares
                                         Under</b></p>
                                                                                <p style="margin-top: 0; margin-bottom: 0"><b>Options</b></p></td><td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"><b>&nbsp;</b></td>
    <td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"><p style="margin-top: 0; margin-bottom: 0"><b>Weighted Average Exercise Price</b></p>
                                                                                <p style="margin-top: 0; margin-bottom: 0"><b>(per share)</b></p></td><td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"><b>&nbsp;</b></td>
    <td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"><p style="margin-top: 0; margin-bottom: 0"><b>Weighted Average Remaining</b></p>
                                                                                                                                         <p style="margin-top: 0; margin-bottom: 0"><b>Contractual Life</b></p>
                                                                                <p style="margin-top: 0; margin-bottom: 0"><b>(in years)</b></p></td><td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"><b>&nbsp;</b></td>
    <td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"><p style="margin-top: 0; margin-bottom: 0"><b>Aggregate Intrinsic Value</b></p>
                                                                                <p style="margin-top: 0; margin-bottom: 0"><b>(in thousands)</b></p></td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 40%; font-size: 10pt">Outstanding at December 31, 2016</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 12%; font-size: 10pt; text-align: right">232,578</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">16.53</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 12%; font-size: 10pt; text-align: right">&nbsp;</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt; text-decoration: line-through">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left">&nbsp;</td><td style="width: 12%; font-size: 10pt; text-decoration: line-through; text-align: right">&nbsp;</td><td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Granted</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">12,336</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">27.05</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Exercised</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">(51,285</td><td style="font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">26.88</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Expired</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid">&nbsp;</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: right; border-bottom: Black 1pt solid">(3,750</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: right">18.85</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: right">&nbsp;</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: right">&nbsp;</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; padding-bottom: 2.25pt">Outstanding at September 30, 2017</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">189,879</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">17.41</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">3.55</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">2,029</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; padding-bottom: 2.25pt">Exercisable at September 30, 2017</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">184,879</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">17.23</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">3.60</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">2,011</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt">Vested and expected to vest at September 30, 2017</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">189,879</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">17.41</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">3.55</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">2,029</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>




<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">On June 6, 2017, the Company granted options to its directors for the purchase
of 12,336 shares of common stock at that day&#8217;s closing price of $27.05. The compensation expense related to these grants
was determined as the fair value of the options using the Black Scholes option pricing model based on the following assumptions:</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 50%; margin: 0pt 0pt 0pt 27pt"><tr style="vertical-align: bottom; background-color: rgb(204,238,255)"><td style="width: 74%; font-size: 10pt; text-align: left">Expected volatility</td><td style="width: 2%; font-size: 10pt">&nbsp;</td>
    <td style="width: 2%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 21%; font-size: 10pt; text-align: left">29.1%</td><td style="width: 1%; font-size: 10pt; text-align: left"></td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Expected dividends</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: left">None</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Risk-free interest rate</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: left">1.84%</td><td style="font-size: 10pt; text-align: left"></td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Exercise price</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left"></td><td style="font-size: 10pt; text-align: left">$27.05</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left">Expected term (in years)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: left">5.8 </td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Weighted-average grant date fair value</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left"></td><td style="font-size: 10pt; text-align: left">$8.51</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr></table></div>


<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The stock volatility for each grant is determined based on a review of the experience
of the weighted average of historical daily price changes of the Company&#8217;s common stock over the expected option term, and
the risk-free interest rate is based on the U.S. Treasury yield curve in effect at the time of grant for periods corresponding
with the expected term of the option. The expected term is estimated based on historical option exercise activity.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">During the nine-month periods ended <font style="color: windowtext">September
30, 2017 and 2016</font>, the total intrinsic value of all options exercised (i.e., the difference between the market price on
the exercise date and the price paid by the employees to exercise the options) was approximately $577,000 and $564,000, respectively,
and the total amount of consideration received by the Company from the exercised options was approximately $802,000 and $529,000,
respectively. At its discretion, the Company allows option holders to surrender previously owned common stock in lieu of paying
the exercise price and withholding taxes. During the nine-month period ended September 30, 2017 there were 6,511 shares <font style="color: windowtext">surrendered
at an average market price of $26.45.</font> During the nine-month period ended September 30, 2016 there were no shares surrendered
for this purpose.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 8; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->8<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">On February 2<font style="color: black">1, 2017, the Company&#8217;s Compensation
Committee approved the award of $400,000, payable in shares of common stock to the Company&#8217;s Chairman, Chief Executive Officer,
and President under the 2003 </font><font style="color: windowtext">Incentive Plan. The shares will be issued in December, 2017.
</font></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The following table summarizes information about Restricted Stock Units (&#8220;RSUs&#8221;)
activity during the nine-month period ended September 30, 2017:</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>






<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 95%; margin: 0pt 0pt 0pt 27pt">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; text-align: center">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Restricted<br> Stock Units</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; padding-bottom: 1pt; border-bottom: Black 1pt solid">Weighted Average<br> Award Date<br> Fair Value</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; font-size: 10pt">Unvested at December 31, 2016</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 12%; font-size: 10pt; text-align: right">46,558</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">20.05</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Awarded</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">22,770</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">24.70</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Shares vested</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(13,419</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: right">23.54</td><td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; padding-bottom: 2.25pt">Unvested at September 30, 2017</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">55,909</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left">$</td><td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: right">20.96</td><td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>




<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">At the Company&#8217;s discretion, RSU holders are given the option to net-share
settle to cover the required minimum withholding tax, and the remaining amount is converted into the equivalent number of common
shares. During the nine-month periods ended September 30, 2017 and 2016, 4,377 and 3,889 shares were surrendered at an average
market price of $24.50 and $22.82, respectively.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"><font style="color: windowtext">As of September 30, 2017, the Company had approximately
$754,000 of unrecognized compensation expense, which is expected to be recognized over a period of 3.5 years</font>.</p></div><p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 27pt"><b></b></td></tr></table><div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top"><td style="width: 27pt"><b>(5)</b></td><td><b>Inventories</b></td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">Inventories are stated at the lower of cost (first-in, first-out) or net realizable
value, and consist of the following at the stated dates (in thousands):</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 95%; margin: 0pt 0pt 0pt 27pt">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; text-align: center">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,<br> 2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"><p style="margin-top: 0; margin-bottom: 0">December 31,</p>
                                                                                <p style="margin-top: 0; margin-bottom: 0">2016</p></td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; font-size: 10pt; text-align: left">Raw materials</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">6,660</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">7,111</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Work in process</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">1,161</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">1,354</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Finished goods</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">5,315</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">5,686</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt">Total inventory</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">13,136</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">14,151</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>



<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p></div><p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 27pt"><b>(6)</b></td><td><b>Preferred Stock</b></td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">On March 18, 2009, the Company declared a dividend of one preferred share purchase
right (a &#8220;Right&#8221;) for each outstanding share of common stock, par value $0.01 per share, to the stockholders of record
on March&nbsp;20, 2009. Each Right entitles the registered holder to purchase from the Company one one-thousandth of a share of
Series A Junior Participating Preferred Stock, par value $0.01 per share (the &#8220;Preferred Share&#8221;) of the Company, at
a price of $25 per one one-thousandth of a Preferred Share subject to adjustment and the terms of the Rights Agreement. The Rights
expire on March 19, 2019.</p></div><p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 27pt"><b></b></td></tr></table><div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top"><td style="width: 27pt"><b>(7)</b></td><td><b>Income Per Share</b></td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">Basic income per share is based on the weighted average number of shares of
common stock outstanding. Diluted income per share is based upon the weighted average number of common shares outstanding and dilutive
common stock equivalent shares outstanding during each period.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 9; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->9<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The weighted average number of shares used to compute basic and diluted net
income per share consisted of the following (in thousands):</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 95%; margin: 0pt 0pt 0pt 27pt">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; text-align: center; padding-bottom: 1pt">&nbsp;<br>
&nbsp;</td>
    <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;<br>
&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended<br>
September 30,</td>
    <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;<br>
&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br>
September 30,</td>
</tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 40%; font-size: 10pt">Weighted average common shares outstanding, basic</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 12%; font-size: 10pt; text-align: right">7,264</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 12%; font-size: 10pt; text-align: right">7,195</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 12%; font-size: 10pt; text-align: right">7,240</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 12%; font-size: 10pt; text-align: right">7,183</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Weighted average common equivalent shares due to stock options and RSUs</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">89</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">87</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">86</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">82</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; padding-bottom: 2.25pt">Weighted average common shares outstanding, diluted</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">7,353</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">7,282</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">7,326</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">7,265</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>



<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The computation of diluted earnings per share excludes the effect of the potential
exercise of stock awards, including stock options, when the average market price of the common stock is lower than the exercise
price of the related options during the period. These outstanding stock awards are not included in the computation of diluted income
per share because the effect would be antidilutive. For the three- and nine-month periods ended <font style="color: windowtext">September
30, 2017</font>, the number of stock awards excluded from the computation of diluted earnings per share for this reason was zero
and 27,336, respectively. For the three- and nine-month periods ended <font style="color: windowtext">September 30, 2016</font>,
the number of stock awards excluded from the computation of diluted earnings per share for this reason was 35,193 and 52,377, respectively.</p></div><p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 27pt"><b></b></td></tr></table><div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top"><td style="width: 27pt"><b>(8)</b></td><td><b>Segment Reporting</b></td></tr></table>

<p style="margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0 0pt 27pt; text-indent: 0in">The Company consists of a single operating and reportable
segment.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">Revenues from customers outside of the United States are not material. No customer
comprised more than 10% of the Company&#8217;s consolidated revenues for the three- and nine-month periods ended September 30,
2017. All of the Company&#8217;s assets are located in the United States.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"><font style="color: windowtext">The Company&#8217;s products are primarily sold
to customers within the Medical, Consumer, Automotive, Aerospace and Defense, Industrial and Electronics markets. Net sales by
market for the three- and nine-month periods ended September 30, 2017 and 2016, respectively, are as follows (in thousands)</font>:</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 95%; margin: 0pt 0pt 0pt 27pt">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended September 30,</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended September 30,</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Market</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 20%; font-size: 10pt">Medical</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 7%; font-size: 10pt; text-align: right">16,712</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 7%; font-size: 10pt; text-align: right">46.8</td><td style="width: 1%; font-size: 10pt; text-align: left">%</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 7%; font-size: 10pt; text-align: right">16,548</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 7%; font-size: 10pt; text-align: right">44.5</td><td style="width: 1%; font-size: 10pt; text-align: left">%</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 7%; font-size: 10pt; text-align: right">52,822</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 7%; font-size: 10pt; text-align: right">47.7</td><td style="width: 1%; font-size: 10pt; text-align: left">%</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 7%; font-size: 10pt; text-align: right">48,953</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 7%; font-size: 10pt; text-align: right">44.7</td><td style="width: 1%; font-size: 10pt; text-align: left">%</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt">Consumer</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">6,006</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">16.8</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">5,648</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">15.2</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">15,713</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">14.2</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">15,303</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">14.0</td><td style="font-size: 10pt; text-align: left">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt">Automotive</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">5,174</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">14.5</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">6,942</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">18.7</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">18,018</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">16.3</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">20,485</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">18.7</td><td style="font-size: 10pt; text-align: left">%</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Aerospace &amp; Defense</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">2,682</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7.5</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">2,516</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">6.8</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">8,290</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7.5</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,929</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7.2</td><td style="font-size: 10pt; text-align: left">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt">Industrial</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">2,591</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7.3</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">2,792</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7.5</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7,629</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">6.9</td><td style="font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">8,441</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">7.7</td><td style="font-size: 10pt; text-align: left">%</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; padding-bottom: 1pt">Electronics</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">2,519</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">7.1</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">2,774</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">7.5</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">8,151</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">7.4</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">8,515</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">7.8</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt">Net Sales</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">35,684</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">100.0</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">37,220</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">100.0</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">110,623</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">100.0</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">109,626</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">100.0</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td></tr>
</table></div>



<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>




<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">Certain amounts for the three- and nine-month periods ended September 30, 2016
were reclassified between markets to conform to the current period presentation.</p></div><p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 10; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->10<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 0"></td>
    <td style="width: 27pt"><b>(9)</b></td>
    <td><b>Other Intangible Assets</b></td></tr>
</table>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">The carrying values of the Company&#8217;s definite lived intangible assets
as of September 30, 2017 and December&nbsp;31, 2016, are as follows (in thousands):</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 95%; margin: 0pt 0pt 0pt 27pt">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Patents</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Non-<br> Compete</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Customer<br> List</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Total</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt">Estimated useful life (in years)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">14</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">5</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">5</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="width: 40%; font-size: 10pt">Gross amount at September 30, 2017</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">429</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">512</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">2,046</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt">&nbsp;</td>
    <td style="width: 1%; font-size: 10pt; text-align: left">$</td><td style="width: 12%; font-size: 10pt; text-align: right">2,987</td><td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; padding-bottom: 1pt">Accumulated amortization at September 30, 2017</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(429</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(496</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(1,983</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(2,908</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; padding-bottom: 2.25pt">Net balance at September 30, 2017</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">-</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">16</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">63</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">79</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; text-align: left">Estimated useful life (in years)</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">14</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">5</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">5 </td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; text-align: right">&nbsp;</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt">Gross amount at December 31, 2016</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">429</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">512</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">2,046</td><td style="font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt">&nbsp;</td>
    <td style="font-size: 10pt; text-align: left">$</td><td style="font-size: 10pt; text-align: right">2,987</td><td style="font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; padding-bottom: 1pt">Accumulated amortization at December 31, 2016</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(429</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(449</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(1,791</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td><td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">(2,669</td><td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-size: 10pt; padding-bottom: 2.25pt">Net balance at December 31, 2016</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">-</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">63</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">255</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">318</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>



<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">Amortization expense related to intangible assets was approximately $79,000
for each of the three-month periods ended September 30, 2017 and 2016, and was approximately $239,000 for each of the nine-month
periods ended September 30, 2017 and 2016. As of September 30, 2017, the estimated remaining amortization expense for 2017 is $79,000.</p></div><p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 0"></td>
    <td style="width: 27pt"><b></b></td></tr></table><div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top"><td style="width: 27pt"><b>(10)</b></td>
    <td><b>Income Taxes</b></td></tr>
</table>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">The income tax expense included in the accompanying unaudited condensed consolidated
statements of income principally relates to the Company&#8217;s proportionate share of the pre-tax income of its wholly-owned subsidiaries.
The determination of income tax expense for interim reporting purposes is based upon the estimated effective tax rate for the year,
adjusted for the impact of any discrete items which are accounted for in the period in which they occur.</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">The Company recorded tax expense of approximately 33.6% and 35.0% of income
before income tax expense, respectively, for each of the three-month periods ended September 30, 2017 and 2016. The decrease in
the effective tax rate for the current period is due to a tax benefit of approximately $37,000 recorded in the three-month period
ended September 30, 2017 as a result of the adoption of ASU No. 2016-09 on January 1, 2017 (See Note 1). The Company recorded a
tax expense of approximately 33.3% and 35.4% of income before income tax expense for each of the nine-month periods ended September
30, 2017 and 2016. The decrease in the effective tax rate for the current period is due to a tax benefit of approximately $162,000
recorded in the nine-month period ended September 30, 2017 as a result of the adoption of ASU No. 2016-09 on January 1, 2017 (See
Note 1); and a tax assessment of approximately $40,000 from one jurisdiction recorded in the first quarter of 2016. The Company
notes the potential for volatility in its effective tax rate, as any windfall or shortfall tax benefits related to its share-based
compensation plans will be recorded directly into income tax expense.</p></div><p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 0"></td>
    <td style="width: 27pt"><b></b></td></tr></table><div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top"><td style="width: 27pt"><b>(11)</b></td>
    <td><b>Plant Consolidations</b></td></tr>
</table>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"><i>Restructuring Costs</i></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">On March 18, 2015, the Company committed to move forward with a plan to cease
operations at its Raritan, New Jersey, plant and consolidate operations into its Newburyport, Massachusetts, facility and other
UFP facilities. The Company&#8217;s decision was in response to a continued decline in business at the Raritan facility and the
Company&#8217;s purchase of the 137,000-square-foot facility in Newburyport. The activities related to this consolidation are complete.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The Company also relocated all operations in its Haverhill, Massachusetts, and
Byfield, Massachusetts, facilities and relocated certain operations in its Georgetown, Massachusetts, facility to Newburyport.
The Haverhill and Byfield relocations were complete at December 31, 2015, and the partial Georgetown relocation was complete at
June 30, 2017.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The Company incurred approximately $2.1 million in one-time expenses in connection
with the Massachusetts consolidations. Included in this amount are approximately $180,000 relating to employee severance payments
and relocation costs, approximately $1.6 million in moving expenses and expenses associated with vacating the Raritan, Haverhill,
and Byfield properties, and approximately $360,000 in lease termination costs. Total cash charges were approximately $2.0 million.</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 11; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->11<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">The Company recorded the following restructuring costs associated with the Massachusetts
consolidations for the three- and nine-month periods ended September 30, 2017 and 2016 (in thousands):</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<div data-td-taggable-table=""><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 95%; margin: 0pt 0pt 0pt 27pt">
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; text-align: center">&nbsp;</td><td style="font-size: 10pt; font-weight: bold">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center">Three Months Ended</td><td style="font-size: 10pt; font-weight: bold">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center">Nine Months Ended</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; text-align: center">&nbsp;</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,</td></tr>
<tr style="vertical-align: bottom">
    <td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid">Restructuring Costs</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td><td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td>
    <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 40%; font-size: 10pt; padding-bottom: 1pt">Relocation</td><td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">-</td><td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">25</td><td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">63</td><td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td><td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td>
    <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td><td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right">203</td><td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td></tr>
<tr style="vertical-align: bottom; background-color: White">
    <td style="font-size: 10pt; padding-bottom: 2.25pt">Total</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">-</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">25</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">63</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td><td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td>
    <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right">203</td><td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td></tr>
</table></div>



<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">Costs for the three- and nine- month periods ended September 30, 2017 and 2016
were reclassified in the Condensed Consolidated Statement of Income as &#8220;Restructuring Costs&#8221; from Cost of Sales.</p></div><p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 0"></td>
    <td style="width: 27pt"><b>(12)</b></td>
    <td><b>Related Party Transactions</b></td></tr>
</table>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt"><b>&nbsp;</b></p>

<p style="margin: 0pt 0 0pt 27pt; font-size: 10pt">Daniel Croteau, who has been a member of the Company&#8217;s board of directors
since December 16, 2015, was the Chief Executive Officer (through March 2017) of Vention Medical, Inc. (&#8220;Vention&#8221;),
a customer of the Company. Sales to Vention for the three-months ended March 31, 2017 were approximately $148,000. As a result
of the sale of Vention, Mr. Croteau&#8217;s employment ended in March 2017 and sales to Vention are no longer considered related
party transactions.</p></div><p style="margin: 0pt 0 0pt 27pt; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<div data-td-statement-type="note"><table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 0"></td>
    <td style="width: 27pt"><b>(13)</b></td>
    <td><b>Material Overcharge Settlement</b></td></tr>
</table>

<p style="margin: 0pt 0; font-size: 10pt"><b>&nbsp;</b></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">The Company was a participant in a class action lawsuit against a number
of polyurethane foam suppliers (&#8220;Defendants&#8221;) that was settled during the second quarter of 2016. The suit was filed
to recover damages and obtain injunctive relief for Defendants&#8217; alleged violations of the federal antitrust laws with respect
to the fixing of prices of polyurethane foam sold from January 1, 1999 through August 2010. During the three- and nine-month periods
ended September 30, 2017, the Company received settlement amounts of $0 and approximately $121,000, respectively. During the three-
and nine-month periods ended September 30, 2016, the Company received settlement amounts of approximately $1.7 million and $2.1
million, respectively. The settlement amounts for the three- and nine-month periods ended September 30, 2017 and 2016 are recorded
as &#8220;Material overcharge settlement&#8221; in the operating income section of the Condensed Consolidated Statements of Income.</p></div><p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 0.75in"><b><a name="a_007"></a>ITEM 2:</b></td><td><b>MANAGEMENT'S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND&nbsp;RESULTS&nbsp;OF&nbsp;OPERATIONS</b></td></tr></table>

<p style="font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0"><b>Forward-looking Statements</b></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Some of the statements contained in this Report are forward-looking statements within
the meaning of Section 27A of the Securities Act of 1933, as amended (&#8220;Securities Act&#8221;), and Section 21E of the Securities
Exchange Act of 1934, as amended (&#8220;Exchange Act&#8221;). These statements are subject to known and unknown risks, uncertainties,
and other factors, which may cause our or our industry&#8217;s actual results, performance, or achievements to be materially different
from any future results, performance or achievements expressed or implied by the forward-looking statements. Forward-looking statements
include, but are not limited to, statements about the Company&#8217;s prospects, anticipated trends in the different markets in
which the Company competes, including the medical, automotive, consumer, electronics, industrial and aerospace and defense markets,
anticipated new customer and vendor contracts, statements regarding anticipated advantages relating to the Company&#8217;s decisions
to consolidate or expand certain facilities, including the ongoing expansion of its Newburyport facility, and the expected cost
savings and efficiencies associated therewith, anticipated advantages and the timing associated with requalification of parts,
anticipated advantages of maintaining fewer, larger plants, anticipated advantages the Company expects to realize from its investments
and capital expenditures, including the development of and investments in its molded fiber product lines, expectations regarding
the manufacturing capacity and efficiencies of the Company and the expected timing associated therewith, statements regarding the
end of the Company&#8217;s automotive door panel program with Mercedes Benz, and the resulting impact to revenues, statements about
the Company&#8217;s acquisition opportunities and strategies, its participation and growth in multiple markets, its business opportunities,
the Company&#8217;s growth potential and strategies for growth, anticipated revenues and the timing of such revenues, and any indication
that the Company may be able to sustain or increase its sales and earnings or sales and earnings growth rates. Investors are cautioned
that such forward-looking statements involve risks and uncertainties, including without limitation risks and uncertainties associated
with the identification of suitable acquisition candidates and the successful, efficient execution of acquisition transactions
and integration of any such acquisition candidates, risks and uncertainties associated with plant closures and consolidations and
expected efficiencies from consolidating manufacturing, risks and uncertainties associated with the requalification of parts, the
risk that we may not be able to finalize anticipated new customer contracts, risks associated with the implementation of new production
equipment and requalification or recertification of transferred equipment in a timely, cost-efficient manner, and risks that any
benefits from such new equipment may be delayed or not fully realized, or that the Company may be unable to fully utilize its expected
production capacity. Accordingly, actual results may differ materially.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 12; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->12<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">In some cases, you can identify forward-looking statements by terms such as &#8220;may,&#8221;
&#8220;will,&#8221; &#8220;should,&#8221; &#8220;could,&#8221; &#8220;would,&#8221; &#8220;expects,&#8221; &#8220;plans,&#8221;
&#8220;anticipates,&#8221; &#8220;believes,&#8221; &#8220;estimates,&#8221; &#8220;projects,&#8221; &#8220;predicts,&#8221; &#8220;potential,&#8221;
and similar expressions intended to identify forward-looking statements. Our actual results could be different from the results
described in or anticipated by our forward-looking statements due to the inherent uncertainty of estimates, forecasts, and projections,
and may be materially better or worse than anticipated. Given these uncertainties, you should not place undue reliance on these
forward-looking statements. Forward-looking statements represent our estimates and assumptions only as of the date of this Report.
We expressly disclaim any duty to provide updates to forward-looking statements, and the estimates and assumptions associated with
them, after the date of this Report, in order to reflect changes in circumstances or expectations, or the occurrence of unanticipated
events, except to the extent required by applicable securities laws. All of the forward-looking statements are qualified in their
entirety by reference to the factors discussed above and under &#8220;Risk Factors&#8221; set forth in Part I Item 1A of the Company&#8217;s
Annual Report on Form 10-K for the year ended December 31, 2016, as well as the risks and uncertainties discussed elsewhere in
this Report. We qualify all of our forward-looking statements by these cautionary statements. We caution you that these risks are
not exhaustive. We operate in a continually changing business environment and new risks emerge from time to time.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Unless the context requires otherwise, the terms &#8220;we&#8221;, &#8220;us&#8221;,
&#8220;our&#8221;, or &#8220;the Company&#8221; refer to UFP Technologies, Inc. and its consolidated subsidiaries.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0"><b>Overview </b></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">UFP Technologies is an innovative designer and custom converter of foams, plastics, and
natural fiber materials, principally serving the Medical, Consumer, Automotive, Aerospace and Defense, Industrial and Electronics
markets. The Company consists of a single operating and reportable segment.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"><font style="color: windowtext">The Company had a slight increase in sales through the
first nine months of 2017, largely fueled by continued growth in sales to customers in the medical market, partially offset by
declined sales to customer in the automotive market. The Company improved gross margins for the nine-month period ended September
30, 2017 to 25.0% from 24.1% in the first nine months of 2016 as the Company has become much more efficient in manufacturing particularly
in those plants impacted by recent consolidations. Absent non-recurring restructuring and material overcharge items, operating
income increased by 19% in the first nine months of 2017</font><font style="color: gray">. </font></p>

<p style="color: gray; font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">The Company&#8217;s previously announced consolidation and relocation efforts were complete
as of June 30, 2017. The Company is in the process of further expanding its Newburyport, Massachusetts, manufacturing plant. The
Company constantly evaluates ways to enhance operating efficiencies and will consider additional expansions, consolidations, or
relocations of operations from time to time.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">The Company&#8217;s current strategy includes further organic growth and growth through
strategic acquisitions<font style="color: black">. </font></p>

<p style="margin: 0pt 0; font-size: 10pt"><b>&nbsp;</b></p>

<p style="margin: 0pt 0; font-size: 10pt"><b>Results of Operations</b></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"><i>Sales</i></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Sales for the three-month period ended September 30, 2017 decreased approximately 4.1%
to $35.7 million compared to $37.2 million in the same period in 2016. The decrease in sales during the three-month period ended
September 30, 2017 was primarily due to decreases in sales to customers in the automotive and electronics markets of approximately
25.5% and 9.2%, respectively. These decreases were partially offset by increases in sales to customers in the aerospace and defense
and consumer markets of approximately 6.6% and 6.3%, respectively. The decline in sales to customers in the automotive market was
primarily due to soft demand for interior trim components in certain legacy programs. The Company has been notified that the remaining
portion of its southeast automotive door panel program for Mercedes Benz, which began in 2004, will end with modest sales anticipated
into the first quarter of 2018. The Company estimates sales for the program will total approximately $3.0 million in 2017 and will
be modest in 2018. The decline in sales to customers in the electronics market was primarily due to reduced demand for protective
packaging. The increase in sales to customers in the aerospace and defense market was primarily due to increased demand for components
from our government contractor customers. The increase in sales to customers in the consumer market was primarily due to higher
demand for molded fiber protective packaging. Sales to customers in the medical market grew at 1% for the quarter&#8212;a rate
slower than recent historical levels&#8212;as two large customers in this market added second suppliers to meet their internal
risk mitigation requirements and certain customers ordered less due to storm related disruptions to their business.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 13; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->13<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0; font-size: 10pt"></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Sales for the nine-month period ended September 30, 2017 increased approximately 0.9%
to $110.6 million from sales of $109.6 million for the same period in 2016. The increase in sales for the nine-month period ended
September 30, 2017 was primarily due to increases in sales to customers in the medical market of approximately 7.9% partially offset
by decreases in sales to customers in the automotive and industrial markets of approximately 12.0% and 9.6% respectively. The increase
in sales to customers in the medical market was primarily due to strong demand for our customers&#8217; products as well as selective
price increases. The decline in sales to customers in the automotive market was primarily due to soft demand for interior trim
components in certain legacy programs. The decline in sales to customers in the industrial market was primarily due to a credit
issue at one of our customers within this market.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0"><i>Gross Profit</i></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Gross profit as a percentage of sales (&#8220;gross margin&#8221;) increased to 23.0%
for the three-month period ended September 30, 2017, from 22.7% for the same period in 2016. As a percentage of sales, material
and labor costs collectively decreased 0.8%, while overhead increased 0.5%. The decrease in collective material and labor costs
as a percentage of sales is primarily due to gains in manufacturing efficiencies resulting from continuous improvement initiatives.
The increase in overhead as a percentage of sales is primarily due to fixed overhead costs measured against reduced sales.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Gross margin increased to 25.0% for the nine-month period ended September 30, 2017, from
24.1% for the same period in 2016. As a percentage of sales, material and labor costs collectively decreased 1.6%, while overhead
increased 0.7%. The decrease in collective material and labor costs as a percentage of sales is primarily due to gains in manufacturing
efficiencies resulting from continuous improvement initiatives, strategic price increases and an improvement in the overall book
of business. The increase in overhead is primarily due to an increase in indirect labor costs of approximately $700,000 due largely
to hires made in the second half of 2016 to support growth.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0"><i>Selling, General and Administrative Expenses</i></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Selling, general, and administrative expenses (&#8220;SG&amp;A&#8221;) decreased approximately
5.5% to $5.7 million for the three-month period ended September 30, 2017 from $6.0 million for the same period in 2016. As a percentage
of sales, SG&amp;A decreased to 16.0% for the three-month period ended September 30, 2017 from 16.2% for the same three-month period
in 2016. The decrease in SG&amp;A for the three-month period ended September 30, 2017 is primarily due to reductions in general
and administrative payroll and recruiting costs.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">SG&amp;A decreased approximately 1.8% to $18.1 million for the nine-month period ended
September 30, 2017 from $18.4 million for the same period in 2016. As a percentage of sales, SG&amp;A decreased to 16.3% for the
nine-month period ended September 30, 2017 from 16.8% for the same nine-month period in 2016. The decrease in SG&amp;A for the
nine-month period ended September 30, 2017 is primarily due to reductions in consulting and recruiting expenses. The decrease in
SG&amp;A as a percentage of sales is primarily due to reductions in general and administrative payroll, consulting and recruiting
expenses measured against higher sales.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"><i>Restructuring Costs</i></p>

<p style="font-size: 10pt; margin: 0pt 0; text-indent: 0in">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">For the three-month period ended September 30, 2017 the Company did not incur any restructuring
costs compared to approximately $25,000 for the same period in 2016.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Additional information regarding restructuring costs can be found in Note 11 of the Notes
to Interim Condensed Consolidated Financial Statements.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"><i>Material Overcharge Settlement</i></p>

<p style="margin: 0pt 0; font-size: 10pt"><b>&nbsp;</b></p>

<p style="margin: 0pt 0; font-size: 10pt">The Company was a participant in a class action lawsuit against a number of polyurethane
foam suppliers (&#8220;Defendants&#8221;) that was settled during the second quarter of 2016. The suit was filed to recover damages
and obtain injunctive relief for Defendants&#8217; alleged violations of the federal antitrust laws with respect to the fixing
of prices of polyurethane foam sold from January 1, 1999 through August 2010. During the three- and nine-month periods ended September
30, 2017, the Company received settlement amounts of $0 and approximately $121,000, respectively. During the three- and nine-month
periods ended September 30, 2016, the Company received settlement amounts of approximately $1.7 million and $2.1 million, respectively.
The settlement amounts for the three- and nine-month periods ended September 30, 2017 and 2016 are recorded as &#8220;Material
overcharge settlement&#8221; in the operating income section of the Condensed Consolidated Statements of Income.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 14; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->14<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0"><i>Interest Income and Expense</i></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">The Company had net interest income of approximately $51,000 and $25,000 for the three-month
periods ended September 30, 2017 and 2016, respectively. The Company had net interest income of approximately $108,000 and $51,000
for the nine-month periods ended September 30, 2017 and 2016, respectively. The increase in net interest income is primarily due
to an increase in interest earned on money market accounts and certificates of deposit and decreasing interest costs on the Company&#8217;s
term loans.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0"><i>Income Taxes</i></p>

<p style="margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">The Company recorded tax expense of approximately 33.6% and 35.0% of income before income
tax expense, respectively, for each of the three-month periods ended September 30, 2017 and 2016. The decrease in the effective
tax rate for the current period is due to a tax benefit of approximately $37,000 recorded in the three-month period ended September
30, 2017 as a result of the adoption of ASU No. 2016-09 on January 1, 2017 (See Note 1). The Company recorded a tax expense of
approximately 33.3% and 35.4% of income before income tax expense for each of the nine-month periods ended September 30, 2017 and
2016. The decrease in the effective tax rate for the current period is due to a tax benefit of approximately $162,000 recorded
in the nine-month period ended September 30, 2017 as a result of the adoption of ASU No. 2016-09 on January 1, 2017 (See Note 1);
and a tax assessment of approximately $40,000 from one jurisdiction recorded in the first quarter of 2016. The Company notes the
potential for volatility in its effective tax rate, as any windfall or shortfall tax benefits related to its share-based compensation
plans will be recorded directly into income tax expense. The Company has deferred tax assets on its books associated with net operating
losses generated in previous years. The Company has considered both positive and negative available evidence in its determination
that the deferred tax assets are more likely than not to be realized, and has not recorded a tax valuation allowance at September
30, 2017. The Company will continue to assess whether the deferred tax assets will be realizable and, when appropriate, will record
a valuation allowance against these assets. The amount of the net deferred tax asset considered realizable, however, could be reduced
in the near term if estimates of future taxable income during the carry-forward period are reduced.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"><b>Liquidity and Capital Resources</b></p>

<p style="margin: 0pt 0; font-size: 10pt"><b>&nbsp;</b></p>

<p style="margin: 0pt 0; font-size: 10pt">The Company generally funds its operating expenses, capital requirements, and growth
plan through internally generated cash and bank credit facilities.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"><i>Cash Flows</i></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Net cash provided by operations for the nine-month period ended September 30, 2017 was
approximately $13.0 million and was primarily a result of net income generated of $6.5 million, depreciation and amortization of
approximately $4.2 million, share-based compensation of $0.8 million, an increase in deferred taxes of $0.3 million, a decrease
in inventory of approximately $1.0 million due primarily to management initiatives, an increase in accounts payable of approximately
$0.4 million due to the timing of vendor payments in the ordinary course of business, an increase in accrued expenses of approximately
$0.7 million due to compensation accruals and an increase in other long-term liabilities of $0.2 million. These cash inflows and
adjustments to income were partially offset by an increase in accounts receivable of approximately $0.8 million due to the timing
of customer collections, an increase in refundable income taxes of approximately $0.2 million and an increase in other assets of
approximately $0.1 million.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Net cash used in investing activities during the nine-month period ended September 30,
2017 was approximately $6.9 million and was primarily the result of additions of manufacturing machinery and equipment and the
expansion of the Newburyport, Massachusetts plant.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<!-- Field: Page; Sequence: 15; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->15<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Net cash used in financing activities was approximately $0.2 million during the nine-month
period ended September 30, 2017, representing cash used to service term debt of approximately $0.7 million and to pay statutory
withholding for stock options exercised and restricted stock units vested of approximately $0.1 million, partially offset by net
proceeds received upon stock options exercises of approximately $0.6 million.</p>

<p style="font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0"><i>Outstanding and Available Debt</i></p>

<p style="font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">The Company maintains an unsecured $40 million revolving credit facility with Bank of
America, N.A. The credit facility calls for interest of LIBOR plus a margin that ranges from 1.0% to 1.5% or, at the discretion
of the Company, the bank&#8217;s prime rate less a margin that ranges from 0.25% to zero. In both cases the applicable margin is
dependent upon Company performance. Under the credit facility, the Company is subject to a minimum fixed-charge coverage financial
covenant as well as a maximum total funded debt to EBITDA financial covenant. The Company&#8217;s $40 million credit facility matures
on November 30, 2018.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">As of September 30, 2017, the Company had no borrowings outstanding under the credit
facility. Included in the credit facility were approximately $300,000 in standby letters of credit drawable as a financial guarantee
on worker&#8217;s compensation insurance policies. As of September 30, 2017, the Company was in compliance with all covenants under
the credit facility.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">In 2012, the Company financed the purchase of two molded fiber machines through five-year
term loans that mature in October 2017. The annual interest rate is fixed at 1.83% and the loans are secured by the related molded
fiber machines. As of September 30, 2017, the outstanding balance of the term loan facility was approximately $84,000.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"><i>Future Liquidity</i></p>

<p style="margin: 0pt 0; font-size: 10pt"><i>&nbsp;</i></p>

<p style="margin: 0pt 0; font-size: 10pt">The Company requires cash to pay its operating expenses, purchase capital equipment,
and service its contractual obligations. The Company&#8217;s principal sources of funds are its operations and its revolving credit
facility. The Company generated cash of approximately $13.0 million from operations during the nine-month period ended September
30, 2017; however, the Company cannot guarantee that its operations will generate cash in future periods. The Company&#8217;s longer-term
liquidity is contingent upon future operating performance.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Throughout fiscal 2017, the Company plans to continue to add capacity to enhance operating
efficiencies in its manufacturing plants. The Company is in the process of further expanding its Newburyport, Massachusetts, manufacturing
plant. The Company may consider additional acquisitions of companies, technologies, or products that are complementary to its business.
The Company believes that its existing resources, including its revolving credit facility, together with cash expected to be generated
from operations and funds expected to be available to it through any necessary equipment financings and additional bank borrowings,
will be sufficient to fund its cash flow requirements, including capital asset acquisitions, through the next twelve months.</p>

<p style="font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0"><i>Stock Repurchase Program</i></p>

<p style="font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">On June 16, 2015, the Company announced that its Board of Directors authorized the repurchase
of up to $10.0&nbsp;million of the Company&#8217;s outstanding common stock. Under the program, the Company is authorized to repurchase
shares through Rule 10b5-1 plans, open market purchases, privately negotiated transactions, block purchases or otherwise in accordance
with applicable federal securities laws, including Rule 10b-18 of the Securities Exchange Act of 1934. The stock repurchase program
will end upon the earlier of the date on which the plan is terminated by the Board or when all authorized repurchases are completed.
The timing and amount of stock repurchases, if any, will be determined based upon our evaluation of market conditions and other
factors. The stock repurchase program may be suspended, modified, or discontinued at any time, and the Company has no obligation
to repurchase any amount of its common stock under the program. The Company did not repurchase any shares of its common stock under
this program in the first nine months of 2017. Through September 30, 2017, the Company had repurchased a total of 29,559 shares
of its common stock under this program at a cost of approximately $587,000. At September 30, 2017, approximately $9.4 million was
available for future repurchases of the Company&#8217;s common stock under this authorization.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0"><b>Commitments and Contractual Obligations </b></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0">There have been no material changes outside the ordinary course of business
to our contractual obligations and commitments, as disclosed in our Annual Report on Form 10-K for the year ended December 31,
2016.</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0"></p>

<!-- Field: Page; Sequence: 16; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->16<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="font-size: 10pt; margin: 0pt 0.25in 0pt 0"><b>&nbsp;</b></p>

<p style="font-size: 10pt; margin: 0pt 0"><b>Off-Balance-Sheet Arrangements</b></p>

<p style="font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0">In addition to operating leases, the Company&#8217;s off-balance-sheet arrangements include
standby letters of credit which are included in the Company&#8217;s revolving credit facility. As of September 30, 2017, there
was approximately $300,000 in standby letters of credit drawable as a financial guarantee on worker&#8217;s compensation insurance
policies.</p>

<p style="font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 63pt"><b><a name="a_008"></a>ITEM 3:</b></td><td><b>QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK </b></td></tr></table>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 3.25pt 0pt 0; font-size: 10pt">There have been no material changes in our market risks as previously disclosed
in Item 7A of our Annual Report on Form 10-K for the year ended December 31, 2016.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 63pt"><b><a name="a_009"></a>ITEM 4:</b></td><td><b>CONTROLS AND PROCEDURES</b></td></tr></table>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0">As of the end of the period covered by this report (the &#8220;Evaluation Date&#8221;),
the Company&#8217;s management, under the supervision and with the participation of the Company&#8217;s Chief Executive Officer
and Chief Financial Officer, performed an evaluation of the effectiveness of the design and operation of the Company&#8217;s &#8220;disclosure
controls and procedures&#8221; (as defined in SEC Rule 13a-15(e) or 15d-15(e)). Based upon that evaluation, the Chief Executive
Officer and Chief Financial Officer concluded that, as of the Evaluation Date, the Company&#8217;s disclosure controls and procedures
were effective to ensure that information required to be disclosed by the Company in the reports that it files or submits under
the Securities Exchange Act of 1934, as amended, is (i) recorded, processed, summarized, and reported within the time periods specified
in the Securities and Exchange Commission&#8217;s rules and forms, and (ii)&nbsp;accumulated and communicated to the Company&#8217;s
management, including the Chief Executive Officer and Chief Financial Officer, as appropriate to allow timely decisions regarding
required disclosure.</p>

<p style="font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0">There has been no change in the Company&#8217;s internal control over financial reporting
during the most recent fiscal quarter that has materially affected, or is reasonably likely to materially affect, the Company&#8217;s
internal control over financial reporting.</p>

<p style="font-size: 10pt; margin: 0pt 0">&nbsp;</p>

<p style="font-size: 10pt; margin: 0pt 0 0pt 63pt; text-indent: -63pt"><b></b></p>

<table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 0"></td>
    <td style="width: 63pt"><b><a name="a_010"></a>PART II:</b></td>
    <td><b>OTHER INFORMATION</b></td></tr>
</table>

<p style="font-size: 10pt; margin: 0pt 0 0pt 63pt; text-indent: -63pt"><b>&nbsp;</b></p>

<p style="font-size: 10pt; margin: 0pt 0 0pt 63pt; text-indent: -63pt"><b></b></p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 63pt"><b><a name="a_011"></a>ITEM 1A:</b></td><td><b>RISK FACTORS</b></td></tr></table>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">There have been no material changes from the risk factors previously disclosed in Part
1 - Item 1A of the Company&#8217;s Annual Report on Form 10-K for the fiscal year ended December 31, 2016.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 63pt"><b><a name="a_012"></a>ITEM 2:</b></td><td><b>UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS</b></td></tr></table>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"><b><i>Issuer&#8217;s Purchases of Equity Securities</i></b></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">On June 16, 2015, the Company issued a press release announcing that its Board of Directors
authorized the repurchase of up to $10.0 million of the Company&#8217;s outstanding common stock. The Company did not repurchase
any shares of its common stock under this program in the first nine months of 2017. Through September 30, 2017, the Company had
repurchased a total of 29,559 shares of its common stock under this program at a cost of approximately $587,000. At September 30,
2017, approximately $9.4 million was available for future repurchases of the Company&#8217;s common stock under this authorization.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 0"><a name="a_015"></a></td><td style="width: 63pt"><b>ITEM 6:</b></td><td><b>EXHIBITS</b></td></tr></table>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<table cellspacing="0" cellpadding="0" style="width: 100%; border-collapse: collapse; font-size: 10pt">
<tr style="vertical-align: top">
    <td style="width: 14%; text-align: center"><font style="font-size: 10pt"><u>Exhibit No.</u></font></td>
    <td style="width: 86%">
        <p style="margin: 0pt 0; font-size: 10pt"><u>Description</u></p>
        <p style="margin: 0pt 0; font-size: 10pt"></p></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center">&nbsp;</td>
    <td>&nbsp;</td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><a href="exh_311.htm"><font style="font-size: 10pt">31.1</font></a></td>
    <td><a href="exh_311.htm"><font style="font-size: 10pt">Rule 13a-14(a)/15d-14(a)&nbsp;Certification of the Chief Executive Officer.*</font></a></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><a href="exh_312.htm"><font style="font-size: 10pt">31.2</font></a></td>
    <td><a href="exh_312.htm"><font style="font-size: 10pt">Rule 13a-14(a)/15d-14(a)&nbsp;Certification of the Chief Financial Officer.*</font></a></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><a href="exh_321.htm"><font style="font-size: 10pt">32.1</font></a></td>
    <td><a href="exh_321.htm"><font style="font-size: 10pt">Certifications pursuant to 18 U.S.C., Section&nbsp;1350, as adopted pursuant to Section&nbsp;906 of the Sarbanes-Oxley Act of 2002.**</font></a></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.INS</font></td>
    <td><font style="font-size: 10pt">XBRL Instance Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.SCH</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Extension Schema Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.CAL</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Calculation Linkbase Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.LAB</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Label Linkbase Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.PRE</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Presentation Linkbase Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.DEF</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Extension Definition Linkbase Document.*</font></td></tr>
</table>
<p style="margin: 0pt 0 0pt 0.25in; font-size: 10pt">__________________</p>

<p style="margin: 0pt 0 0pt 0.25in; font-size: 10pt"></p>

<table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 18pt">&nbsp;</td>
    <td style="width: 27pt">*</td>
    <td>Filed herewith.</td></tr>
</table>

<p style="margin: 0pt 0 0pt 45.35pt; font-size: 10pt; text-indent: 0pt"></p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 18pt"></td><td style="width: 27pt">**</td><td>Furnished herewith.</td></tr></table>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"></p>

<!-- Field: Page; Sequence: 17; Value: 3 -->
    <div style="margin-top: 6pt; margin-bottom: 6pt; border-bottom: Black 4pt solid"><p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->17<!-- Field: /Sequence -->&nbsp;</p></div>
    <div style="page-break-before: always; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&nbsp;</p></div>
    <!-- Field: /Page -->

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b>&nbsp;</b></p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><a name="a_013"></a><b><u>SIGNATURES</u></b></p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has
duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">UFP TECHNOLOGIES, INC.</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"></p>

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; font: 10pt Times New Roman, Times, Serif; width: 100%">
<tr style="vertical-align: top; text-align: left">
    <td style="width: 20%">&nbsp;</td>
    <td style="width: 25%">Date: November 9, 2017</td>
    <td style="width: 7%">&nbsp;</td>
    <td style="width: 36%; border-bottom: Black 1pt solid">By: /s/ R. Jeffrey Bailly</td>
    <td style="width: 12%">&nbsp;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>R. Jeffrey Bailly</td>
    <td>&nbsp;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td colspan="2">Chairman, Chief Executive Officer, President, and Director</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>(Principal Executive Officer)</td>
    <td>&nbsp;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>Date: November 9, 2017</td>
    <td>&nbsp;</td>
    <td style="border-bottom: Black 1pt solid">By: /s/ Ronald J. Lataille</td>
    <td>&nbsp;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>Ronald J. Lataille</td>
    <td>&nbsp;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>Chief Financial Officer</td>
    <td>&nbsp;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>(Principal Financial Officer)</td>
    <td>&nbsp;</td></tr>
<tr style="vertical-align: top; text-align: left">
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td></tr>
</table>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt; text-align: center"><b><u><a name="a_014"></a>EXHIBIT INDEX</u></b></p>

<p style="font-size: 10pt; text-align: center; margin: 0pt 0">&nbsp;</p>

<table cellspacing="0" cellpadding="0" style="width: 100%; border-collapse: collapse; font-size: 10pt">
<tr style="vertical-align: top">
    <td style="width: 14%; text-align: center"><font style="font-size: 10pt"><u>Exhibit No.</u></font></td>
    <td style="width: 86%"><font style="font-size: 10pt"><u>Description</u></font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center">&nbsp;</td>
    <td>&nbsp;</td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><a href="exh_311.htm"><font style="font-size: 10pt">31.1</font></a></td>
    <td><a href="exh_311.htm"><font style="font-size: 10pt">Rule 13a-14(a)/15d-14(a)&nbsp;Certification of the Chief Executive Officer.*</font></a></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><a href="exh_312.htm"><font style="font-size: 10pt">31.2</font></a></td>
    <td><a href="exh_312.htm"><font style="font-size: 10pt">Rule 13a-14(a)/15d-14(a)&nbsp;Certification of the Chief Financial Officer.*</font></a></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><a href="exh_321.htm"><font style="font-size: 10pt">32.1</font></a></td>
    <td><a href="exh_321.htm"><font style="font-size: 10pt">Certifications pursuant to 18 U.S.C., Section&nbsp;1350, as adopted pursuant to Section&nbsp;906 of the Sarbanes-Oxley Act of 2002.**</font></a></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.INS</font></td>
    <td><font style="font-size: 10pt">XBRL Instance Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.SCH</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Extension Schema Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.CAL</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Calculation Linkbase Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.LAB</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Label Linkbase Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.PRE</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Presentation Linkbase Document.*</font></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><font style="font-size: 10pt">101.DEF</font></td>
    <td><font style="font-size: 10pt">XBRL Taxonomy Extension Definition Linkbase Document.*</font></td></tr>
</table>
<p style="margin: 0pt 0 0pt 0.25in; font-size: 10pt">__________________</p>

<p style="margin: 0pt 0 0pt 45.35pt; font-size: 10pt; text-indent: 0pt"></p>

<table cellpadding="0" cellspacing="0" style="width: 100%; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt">
<tr style="vertical-align: top">
    <td style="width: 18pt">&nbsp;</td>
    <td style="width: 27pt">*</td>
    <td>Filed herewith.</td></tr>
</table>

<p style="margin: 0pt 0 0pt 45.35pt; font-size: 10pt; text-indent: 0pt"></p>

<table cellpadding="0" cellspacing="0" width="100%" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 18pt"></td><td style="width: 27pt">**</td><td>Furnished herewith.</td></tr></table>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin: 0pt 0; font-size: 10pt">&nbsp;</p>

<p style="margin-top: 0pt; text-align: center; margin-bottom: 0pt; font-size: 10pt">18</p>

<p style="margin: 0pt 0; font-size: 10pt"></p>

<!-- Field: Rule-Page --><div align="CENTER" style="margin-top: 3pt; margin-bottom: 3pt"><div style="font-size: 1pt; border-top: Black 4pt solid; width: 100%">&nbsp;</div></div><!-- Field: /Rule-Page -->

<p style="margin: 0pt 0; font-size: 10pt"></p>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>exh_311.htm
<DESCRIPTION>EXHIBIT 31.1
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="margin: 0pt 0; font-size: 10pt; text-align: right">EXHIBIT 31.1</P>

<P STYLE="margin: 0pt 0; font-size: 10pt; text-align: center"><B>&nbsp;</B></P>

<P STYLE="margin: 0pt 0; font-size: 10pt; line-height: 150%; text-align: center"><B><U>EXHIBITS</U></B></P>

<P STYLE="margin: 0pt 0; font-size: 10pt; text-align: center"><B><U>Certification Pursuant to Section 302 of the Sarbanes-Oxley
Act of 2002</U></B></P>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin: 0pt 0; font-size: 10pt">I, R. Jeffrey Bailly, President and Chief Executive Officer of UFP Technologies, Inc.
certify that:</P>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">1.</TD><TD>I have reviewed this quarterly report on Form 10-Q of UFP Technologies, Inc.;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">2.</TD><TD>Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact
necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with
respect to the period covered by this report;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">3.</TD><TD>Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in
all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods
presented in this report;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">4.</TD><TD>The registrant&rsquo;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls
and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined
in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 31.5pt"></TD><TD STYLE="width: 13.5pt">a.</TD><TD>Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our
supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known
to us by others within those entities, particularly during the period in which this report is being prepared;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 31.5pt"></TD><TD STYLE="width: 13.5pt">b.</TD><TD>Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed
under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of
financial statements for external purposes in accordance with generally accepted accounting principles;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 31.5pt"></TD><TD STYLE="width: 13.5pt">c.</TD><TD>Evaluated the effectiveness of the registrant&rsquo;s disclosure controls and procedures and presented in this report our conclusions
about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on
such evaluation; and</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 31.5pt"></TD><TD STYLE="width: 13.5pt">d.</TD><TD>Disclosed in this report any change in the registrant&rsquo;s internal control over financial reporting that occurred during
the registrant&rsquo;s most recent fiscal quarter (the registrant&rsquo;s fourth fiscal quarter in the case of an annual report)
that has materially affected, or is reasonably likely to materially affect, the registrant&rsquo;s internal control over financial
reporting; and</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">5.</TD><TD>The registrant&rsquo;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control
over financial reporting, to the registrant&rsquo;s auditors and the audit committee of the registrant&rsquo;s board of directors
(or persons performing the equivalent functions):</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 31.5pt"></TD><TD STYLE="width: 13.5pt">a.</TD><TD>All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting
which are reasonably likely to adversely affect the registrant&rsquo;s ability to record, process, summarize and report financial
information; and</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 31.5pt"></TD><TD STYLE="width: 13.5pt">b.</TD><TD>Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&rsquo;s
internal control over financial reporting.</TD></TR></TABLE>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin: 0pt 0; font-size: 10pt"></P>

<TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; font: 10pt Times New Roman, Times, Serif; width: 100%">
<TR STYLE="vertical-align: top; text-align: left">
    <TD STYLE="width: 51%">Date: November 9, 2017 </TD>
    <TD STYLE="width: 29%; border-bottom: Black 1pt solid">/s/ R. Jeffrey Bailly</TD>
    <TD STYLE="width: 20%">&nbsp;</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD>R. Jeffrey Bailly</TD>
    <TD>&nbsp;</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD COLSPAN="2">Chairman, Chief Executive Officer, President and Director</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD>(Principal Executive Officer)</TD>
    <TD>&nbsp;</TD></TR>
</TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<P STYLE="margin-top: 0; margin-bottom: 0"></P>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<P STYLE="margin-top: 0; margin-bottom: 0; text-align: center">19</P>

<P STYLE="margin-top: 0; margin-bottom: 0"></P>

<!-- Field: Rule-Page --><DIV ALIGN="CENTER" STYLE="margin-top: 3pt; margin-bottom: 3pt"><DIV STYLE="font-size: 1pt; border-top: Black 4pt solid; width: 100%">&nbsp;</DIV></DIV><!-- Field: /Rule-Page -->

<P STYLE="margin-top: 0; margin-bottom: 0"></P>



</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>exh_312.htm
<DESCRIPTION>EXHIBIT 31.2
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="margin: 0pt 0.9pt 0pt 0; font-size: 10pt; text-align: right">EXHIBIT 31.2</P>

<P STYLE="margin: 0pt 0; font-size: 10pt; text-align: center"><B><U>Certification Pursuant to Section 302 of the Sarbanes-Oxley
Act of 2002</U></B></P>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin: 0pt 0; font-size: 10pt">I, Ronald J. Lataille, Chief Financial Officer of UFP Technologies, Inc., certify that:</P>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">1.</TD><TD>I have reviewed this quarterly report on Form 10-Q of UFP Technologies, Inc.;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">2.</TD><TD>Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact
necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with
respect to the period covered by this report;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">3.</TD><TD>Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in
all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods
presented in this report;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">4.</TD><TD>The registrant&rsquo;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls
and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined
in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 36pt"></TD><TD STYLE="width: 13.5pt">a.</TD><TD>Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our
supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known
to us by others within those entities, particularly during the period in which this report is being prepared;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 36pt"></TD><TD STYLE="width: 13.5pt">b.</TD><TD>Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed
under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of
financial statements for external purposes in accordance with generally accepted accounting principles;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 36pt"></TD><TD STYLE="width: 13.5pt">c.</TD><TD>Evaluated the effectiveness of the registrant&rsquo;s disclosure controls and procedures and presented in this report our conclusions
about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on
such evaluation; and</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 36pt"></TD><TD STYLE="width: 13.5pt">d.</TD><TD>Disclosed in this report any change in the registrant&rsquo;s internal control over financial reporting that occurred during
the registrant&rsquo;s most recent fiscal quarter (the registrant&rsquo;s fourth fiscal quarter in the case of an annual report)
that has materially affected, or is reasonably likely to materially affect, the registrant&rsquo;s internal control over financial
reporting; and</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 0.25in">5.</TD><TD>The registrant&rsquo;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control
over financial reporting, to the registrant&rsquo;s auditors and the audit committee of the registrant&rsquo;s board of directors
(or persons performing the equivalent functions):</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 36pt"></TD><TD STYLE="width: 13.5pt">a.</TD><TD>All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting
which are reasonably likely to adversely affect the registrant&rsquo;s ability to record, process, summarize and report financial
information; and</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 36pt"></TD><TD STYLE="width: 13.5pt">b.</TD><TD>Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&rsquo;s
internal control over financial reporting.</TD></TR></TABLE>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin: 0pt 0; font-size: 10pt"></P>

<TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; font: 10pt Times New Roman, Times, Serif; width: 100%">
<TR STYLE="vertical-align: top; text-align: left">
    <TD STYLE="width: 51%">Date: November 9, 2017</TD>
    <TD STYLE="width: 29%; border-bottom: Black 1pt solid">/s/ Ronald J. Lataille</TD>
    <TD STYLE="width: 20%">&nbsp;</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD>Ronald J. Lataille</TD>
    <TD>&nbsp;</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD COLSPAN="2">Chief Financial Officer</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD>(Principal Financial Officer)</TD>
    <TD>&nbsp;</TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<P STYLE="margin-top: 0; margin-bottom: 0; text-align: center">20</P>

<P STYLE="margin-top: 0; margin-bottom: 0"></P>

<!-- Field: Rule-Page --><DIV ALIGN="CENTER" STYLE="margin-top: 3pt; margin-bottom: 3pt"><DIV STYLE="font-size: 1pt; border-top: Black 4pt solid; width: 100%">&nbsp;</DIV></DIV><!-- Field: /Rule-Page -->

<P STYLE="margin-top: 0; margin-bottom: 0"></P>


</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>exh_321.htm
<DESCRIPTION>EXHIBIT 32.1
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="margin: 0pt 0.9pt 0pt 0.75in; font-size: 10pt; text-align: right">EXHIBIT 32.1</P>

<P STYLE="margin: 0pt 0; font-size: 10pt; text-align: center"><B>&nbsp;</B></P>

<P STYLE="margin: 0pt 0; font-size: 10pt; text-align: center"><B>Certification</B></P>

<P STYLE="margin: 0pt 0; font-size: 10pt; text-align: center"><B>Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</B></P>

<P STYLE="margin: 0pt 0; font-size: 10pt; text-align: center"><B>(Subsections (a) and (b) of Section 1350, Chapter 63 of Title
18, United States Code)</B></P>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin: 0pt 0; font-size: 10pt; text-indent: 0.5in">Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 (subsections
(a) and (b) of Section 1350, Chapter 63 of Title 18, United States Code), the undersigned officers of UFP Technologies, Inc., a
Delaware corporation (the &ldquo;Company&rdquo;) do hereby certify that, to the best of such officers&rsquo; knowledge and belief,
that:</P>

<P STYLE="margin: 0pt 0; font-size: 10pt; text-indent: 0.5in">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 22.5pt"><FONT STYLE="color: black">(1)</FONT></TD><TD><FONT STYLE="color: black">The Quarterly Report on Form 10-Q for the quarter ended September 30, 2017 (the &ldquo;Form 10-Q&rdquo;)
of the Company </FONT><FONT STYLE="color: windowtext">fully complies with the requirements of Section 13(a) or 15(d) of the Securities
Exchange Act of 1934; and </FONT></TD></TR></TABLE>

<P STYLE="margin-top: 0; margin-bottom: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt"><TR STYLE="vertical-align: top">
<TD STYLE="width: 0"></TD><TD STYLE="width: 22.5pt">(2)</TD><TD>The information contained in the Form 10-Q fairly presents, in all materials respects, the financial condition and results
of operations of the Company.</TD></TR></TABLE>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin: 0pt 0; font-size: 10pt"></P>

<TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; font: 10pt Times New Roman, Times, Serif; width: 100%">
<TR STYLE="vertical-align: top; text-align: left">
    <TD STYLE="width: 51%">Date: November 9, 2017 </TD>
    <TD STYLE="width: 29%; border-bottom: Black 1pt solid">/s/ R. Jeffrey Bailly</TD>
    <TD STYLE="width: 20%">&nbsp;</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD>R. Jeffrey Bailly</TD>
    <TD>&nbsp;</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD COLSPAN="2">Chairman, Chief Executive Officer, President, and Director</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD>(Principal Executive Officer)</TD>
    <TD>&nbsp;</TD></TR>
</TABLE>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin: 0pt 0; font-size: 10pt"></P>

<TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; font: 10pt Times New Roman, Times, Serif; width: 100%">
<TR STYLE="vertical-align: top; text-align: left">
    <TD STYLE="width: 51%">Date: November 9, 2017</TD>
    <TD STYLE="width: 29%; border-bottom: Black 1pt solid">/s/ Ronald J. Lataille</TD>
    <TD STYLE="width: 20%">&nbsp;</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD>Ronald J. Lataille</TD>
    <TD>&nbsp;</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD COLSPAN="2">Chief Financial Officer</TD></TR>
<TR STYLE="vertical-align: top; text-align: left">
    <TD>&nbsp;</TD>
    <TD>(Principal Financial Officer)</TD>
    <TD>&nbsp;</TD></TR>
</TABLE>

<P STYLE="margin: 0pt 0; font-size: 10pt"></P>

<P STYLE="margin: 0pt 0; font-size: 10pt"> </P>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin: 0pt 0; font-size: 10pt">A signed original of these written statements required by Section 906 has been provided
to UFP Technologies, Inc. and will be retained by UFP Technologies, Inc. and furnished to the Securities and Exchange Commission
or its staff upon request.</P>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin: 0pt 0; font-size: 10pt">&nbsp;</P>

<P STYLE="margin-top: 0pt; text-align: center; margin-bottom: 0pt; font-size: 10pt">21</P>

<P STYLE="margin: 0pt 0; font-size: 10pt"></P>

<!-- Field: Rule-Page --><DIV ALIGN="CENTER" STYLE="margin-top: 3pt; margin-bottom: 3pt"><DIV STYLE="font-size: 1pt; border-top: Black 4pt solid; width: 100%">&nbsp;</DIV></DIV><!-- Field: /Rule-Page -->

<P STYLE="margin: 0pt 0; font-size: 10pt"></P>





</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.INS
<SEQUENCE>5
<FILENAME>ufpt-20170930.xml
<DESCRIPTION>XBRL INSTANCE FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 02:08AM UTC 2017-11-08--><xbrli:xbrl xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns="http://www.xbrl.org/2003/instance" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2017-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2014-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2016-01-31" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:naics="http://xbrl.sec.gov/naics/2011-01-31" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2011-01-31" xmlns:thunderdome="http://www.RDGFilings.com" xmlns:ufpt="http://www.ufpt.com/20170930" xmlns:us-gaap="http://fasb.org/us-gaap/2017-01-31" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <link:schemaRef xlink:href="ufpt-20170930.xsd" xlink:type="simple"/>
  <dei:AmendmentFlag contextRef="d_2017-01-01_2017-09-30" id="c-14">false</dei:AmendmentFlag>
  <dei:CurrentFiscalYearEndDate contextRef="d_2017-01-01_2017-09-30" id="c-4">--12-31</dei:CurrentFiscalYearEndDate>
  <dei:DocumentFiscalPeriodFocus contextRef="d_2017-01-01_2017-09-30" id="c-13">Q3</dei:DocumentFiscalPeriodFocus>
  <dei:DocumentFiscalYearFocus contextRef="d_2017-01-01_2017-09-30" id="c-12">2017</dei:DocumentFiscalYearFocus>
  <dei:DocumentPeriodEndDate contextRef="d_2017-01-01_2017-09-30" id="c-11">2017-09-30</dei:DocumentPeriodEndDate>
  <dei:DocumentType contextRef="d_2017-01-01_2017-09-30" id="c-10">10-Q</dei:DocumentType>
  <dei:EntityCentralIndexKey contextRef="d_2017-01-01_2017-09-30" id="c-2">0000914156</dei:EntityCentralIndexKey>
  <dei:EntityCommonStockSharesOutstanding contextRef="i_2017-11-06" decimals="INF" id="c-9" unitRef="xbrli-shares">7267662</dei:EntityCommonStockSharesOutstanding>
  <dei:EntityCurrentReportingStatus contextRef="d_2017-01-01_2017-09-30" id="c-6">Yes</dei:EntityCurrentReportingStatus>
  <dei:EntityFilerCategory contextRef="d_2017-01-01_2017-09-30" id="c-5">Accelerated Filer</dei:EntityFilerCategory>
  <dei:EntityRegistrantName contextRef="d_2017-01-01_2017-09-30" id="c-1">UFP TECHNOLOGIES INC</dei:EntityRegistrantName>
  <dei:EntityVoluntaryFilers contextRef="d_2017-01-01_2017-09-30" id="c-7">No</dei:EntityVoluntaryFilers>
  <dei:EntityWellKnownSeasonedIssuer contextRef="d_2017-01-01_2017-09-30" id="c-8">No</dei:EntityWellKnownSeasonedIssuer>
  <dei:TradingSymbol contextRef="d_2017-01-01_2017-09-30" id="c-3">ufpt</dei:TradingSymbol>
  <ufpt:PlantConsolidationDisclosureTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691433">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;11&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Plant Consolidations&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;div style="display: inline; font-style: italic;"&gt;Restructuring Costs&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;On &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; March 18, 2015, &lt;/div&gt;the Company committed to move forward with a plan to cease operations at its Raritan, New Jersey, plant and consolidate operations into its Newburyport, Massachusetts, facility and other UFP facilities. The Company&amp;#x2019;s decision was in response to a continued decline in business at the Raritan facility and the Company&amp;#x2019;s purchase of the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;137,000&lt;/div&gt;-square-foot facility in Newburyport. The activities related to this consolidation are complete.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The Company also relocated all operations in its Haverhill, Massachusetts, and Byfield, Massachusetts, facilities and relocated certain operations in its Georgetown, Massachusetts, facility to Newburyport. The Haverhill and Byfield relocations were complete at &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December 31, 2015, &lt;/div&gt;and the partial Georgetown relocation was complete at &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; June 30, 2017.&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The Company incurred approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$2.1&lt;/div&gt; million in &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;one&lt;/div&gt;-time expenses in connection with the Massachusetts consolidations. Included in this amount are approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$180,000&lt;/div&gt; relating to employee severance payments and relocation costs, approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$1.6&lt;/div&gt; million in moving expenses and expenses associated with vacating the Raritan, Haverhill, and Byfield properties, and approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$360,000&lt;/div&gt; in lease termination costs. Total cash charges were approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$2.0&lt;/div&gt; million.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt;  &lt;!-- Field: /Page --&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The Company recorded the following restructuring costs associated with the Massachusetts consolidations for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt; (in thousands):&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center"&gt;Three Months Ended&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center"&gt;Nine Months Ended&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;September 30,&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;September 30,&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid"&gt;Restructuring Costs&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 40%; font-size: 10pt; padding-bottom: 1pt"&gt;Relocation&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;25&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;63&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;203&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Total&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;25&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;63&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;203&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;Costs for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;- month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt; were reclassified in the Condensed Consolidated Statement of Income as &amp;#x201c;Restructuring Costs&amp;#x201d; from Cost of Sales.&lt;/div&gt;&lt;/div&gt;</ufpt:PlantConsolidationDisclosureTextBlock>
  <ufpt:PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding contextRef="d_2009-03-18_2009-03-18" decimals="INF" id="c23139360" unitRef="xbrli-pure">1</ufpt:PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding>
  <ufpt:ProceedsFromStockOptionsExercisedNet contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139169" unitRef="iso4217-usd">630000</ufpt:ProceedsFromStockOptionsExercisedNet>
  <ufpt:ProceedsFromStockOptionsExercisedNet contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139170" unitRef="iso4217-usd">529000</ufpt:ProceedsFromStockOptionsExercisedNet>
  <ufpt:RevisionsPolicyPolicyTextBlock contextRef="d_2017-01-01_2017-09-30" id="c23140140">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;!-- Field: /Page --&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;/div&gt;&lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;div style="display: inline; font-style: italic;"&gt;Revisions&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;Certain revisions have been made to the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt; Condensed Consolidated Statement of Cash Flows to conform to the current year presentation relating to a reserve for uncertain tax positions and to cash paid for capital expenditures. The reclassification of a reserve for uncertain tax positions resulted in an increase to the change in refundable income taxes of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$315,000&lt;/div&gt; and a decrease to the change in accrued expenses of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$315,000.&lt;/div&gt; A change in presentation of cash paid for capital expenditures resulted in a decrease of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$311,000&lt;/div&gt; in both the change in accounts payable and in additions to property, plant and equipment, net. These revisions had &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;no&lt;/div&gt; impact on previously reported net income and are deemed immaterial to the previously issued financial statements.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</ufpt:RevisionsPolicyPolicyTextBlock>
  <ufpt:SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139260" unitRef="xbrli-shares">6511</ufpt:SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation>
  <ufpt:SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation contextRef="d_2016-01-01_2016-09-30" decimals="INF" id="c23139263" unitRef="xbrli-shares">0</ufpt:SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation>
  <ufpt:SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139261" unitRef="iso4217-usd-per-xbrli-shares">26.45</ufpt:SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice>
  <ufpt:SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139274" unitRef="iso4217-usd-per-xbrli-shares">24.50</ufpt:SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice>
  <ufpt:SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice contextRef="d_2016-01-01_2016-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139275" unitRef="iso4217-usd-per-xbrli-shares">22.82</ufpt:SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice>
  <us-gaap:AccountsPayableCurrent contextRef="i_2017-09-30" decimals="-3" id="c23139005" unitRef="iso4217-usd">4958000</us-gaap:AccountsPayableCurrent>
  <us-gaap:AccountsPayableCurrent contextRef="i_2016-12-31" decimals="-3" id="c23139006" unitRef="iso4217-usd">4002000</us-gaap:AccountsPayableCurrent>
  <us-gaap:AccruedLiabilitiesCurrent contextRef="i_2017-09-30" decimals="-3" id="c23139007" unitRef="iso4217-usd">5356000</us-gaap:AccruedLiabilitiesCurrent>
  <us-gaap:AccruedLiabilitiesCurrent contextRef="i_2016-12-31" decimals="-3" id="c23139008" unitRef="iso4217-usd">4698000</us-gaap:AccruedLiabilitiesCurrent>
  <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="i_2017-09-30" decimals="-3" id="c23138991" unitRef="iso4217-usd">51815000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
  <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="i_2016-12-31" decimals="-3" id="c23138992" unitRef="iso4217-usd">48290000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
  <us-gaap:AdditionalPaidInCapital contextRef="i_2017-09-30" decimals="-3" id="c23139045" unitRef="iso4217-usd">26580000</us-gaap:AdditionalPaidInCapital>
  <us-gaap:AdditionalPaidInCapital contextRef="i_2016-12-31" decimals="-3" id="c23139046" unitRef="iso4217-usd">25216000</us-gaap:AdditionalPaidInCapital>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-07-01_2017-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember" id="c23139282" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-07-01_2016-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember" id="c23139283" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember" decimals="-3" id="c23139284" unitRef="iso4217-usd">105000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-01-01_2016-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember" decimals="-3" id="c23139285" unitRef="iso4217-usd">105000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-07-01_2017-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-ChiefExecutiveOfficerMember" decimals="-3" id="c23139286" unitRef="iso4217-usd">100000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-07-01_2016-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-ChiefExecutiveOfficerMember" decimals="-3" id="c23139287" unitRef="iso4217-usd">100000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-ChiefExecutiveOfficerMember" decimals="-3" id="c23139288" unitRef="iso4217-usd">300000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-01-01_2016-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-ChiefExecutiveOfficerMember" decimals="-3" id="c23139289" unitRef="iso4217-usd">300000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-07-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember" id="c23139290" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-07-01_2016-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember" id="c23139291" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember" decimals="-3" id="c23139292" unitRef="iso4217-usd">105000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-01-01_2016-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember" decimals="-3" id="c23139293" unitRef="iso4217-usd">105000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-07-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember" decimals="-3" id="c23139294" unitRef="iso4217-usd">4000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-07-01_2016-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember" decimals="-3" id="c23139295" unitRef="iso4217-usd">34000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember" decimals="-3" id="c23139296" unitRef="iso4217-usd">25000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-01-01_2016-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember" decimals="-3" id="c23139297" unitRef="iso4217-usd">107000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-07-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember" decimals="-3" id="c23139298" unitRef="iso4217-usd">102000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-07-01_2016-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember" decimals="-3" id="c23139299" unitRef="iso4217-usd">95000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember" decimals="-3" id="c23139300" unitRef="iso4217-usd">307000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-01-01_2016-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember" decimals="-3" id="c23139301" unitRef="iso4217-usd">254000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-07-01_2017-09-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember" decimals="-3" id="c23139302" unitRef="iso4217-usd">206000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-07-01_2016-09-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember" decimals="-3" id="c23139303" unitRef="iso4217-usd">229000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2017-01-01_2017-09-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember" decimals="-3" id="c23139304" unitRef="iso4217-usd">842000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllocatedShareBasedCompensationExpense contextRef="d_2016-01-01_2016-09-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember" decimals="-3" id="c23139305" unitRef="iso4217-usd">871000</us-gaap:AllocatedShareBasedCompensationExpense>
  <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="i_2017-09-30" decimals="-3" id="c23138979" unitRef="iso4217-usd">602000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
  <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="i_2016-12-31" decimals="-3" id="c23138980" unitRef="iso4217-usd">567000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
  <us-gaap:AmortizationOfIntangibleAssets contextRef="d_2017-07-01_2017-09-30" decimals="INF" id="c23139462" unitRef="iso4217-usd">79000</us-gaap:AmortizationOfIntangibleAssets>
  <us-gaap:AmortizationOfIntangibleAssets contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139466" unitRef="iso4217-usd">239000</us-gaap:AmortizationOfIntangibleAssets>
  <us-gaap:AmortizationOfIntangibleAssets contextRef="d_2016-07-01_2016-09-30" decimals="INF" id="c23139463" unitRef="iso4217-usd">79000</us-gaap:AmortizationOfIntangibleAssets>
  <us-gaap:AmortizationOfIntangibleAssets contextRef="d_2016-01-01_2016-09-30" decimals="INF" id="c23139467" unitRef="iso4217-usd">239000</us-gaap:AmortizationOfIntangibleAssets>
  <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="d_2017-07-01_2017-09-30" decimals="INF" id="c23139373" unitRef="xbrli-shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
  <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139374" unitRef="xbrli-shares">27336</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
  <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="d_2016-07-01_2016-09-30" decimals="INF" id="c23139377" unitRef="xbrli-shares">35193</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
  <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="d_2016-01-01_2016-09-30" decimals="INF" id="c23139378" unitRef="xbrli-shares">52377</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
  <us-gaap:AreaOfRealEstateProperty contextRef="i_2015-03-18_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="INF" id="c23139537" unitRef="utr-sqft">137000</us-gaap:AreaOfRealEstateProperty>
  <us-gaap:Assets contextRef="i_2017-09-30" decimals="-3" id="c23139001" unitRef="iso4217-usd">137091000</us-gaap:Assets>
  <us-gaap:Assets contextRef="i_2016-12-31" decimals="-3" id="c23139002" unitRef="iso4217-usd">127934000</us-gaap:Assets>
  <us-gaap:AssetsCurrent contextRef="i_2017-09-30" decimals="-3" id="c23138987" unitRef="iso4217-usd">75639000</us-gaap:AssetsCurrent>
  <us-gaap:AssetsCurrent contextRef="i_2016-12-31" decimals="-3" id="c23138988" unitRef="iso4217-usd">69847000</us-gaap:AssetsCurrent>
  <us-gaap:BusinessExitCosts1 contextRef="d_2017-07-01_2017-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" id="c23139551" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:BusinessExitCosts1 contextRef="d_2016-07-01_2016-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="-3" id="c23139552" unitRef="iso4217-usd">25000</us-gaap:BusinessExitCosts1>
  <us-gaap:BusinessExitCosts1 contextRef="d_2017-01-01_2017-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="-3" id="c23139553" unitRef="iso4217-usd">63000</us-gaap:BusinessExitCosts1>
  <us-gaap:BusinessExitCosts1 contextRef="d_2016-01-01_2016-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="-3" id="c23139554" unitRef="iso4217-usd">203000</us-gaap:BusinessExitCosts1>
  <us-gaap:CapitalExpendituresIncurredButNotYetPaid contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139236" unitRef="iso4217-usd">527000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
  <us-gaap:CapitalExpendituresIncurredButNotYetPaid contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139237" unitRef="iso4217-usd">311000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
  <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="i_2017-09-30" decimals="-3" id="c23138975" unitRef="iso4217-usd">37246000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
  <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="i_2016-12-31" decimals="-3" id="c23138976" unitRef="iso4217-usd">31359000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
  <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="i_2015-12-31" decimals="-3" id="c23139180" unitRef="iso4217-usd">29804000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
  <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="i_2016-09-30" decimals="-3" id="c23139182" unitRef="iso4217-usd">30118000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
  <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139177" unitRef="iso4217-usd">5887000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
  <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139178" unitRef="iso4217-usd">314000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
  <us-gaap:CashFlowSupplementalDisclosuresTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691415">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 0"&gt;&lt;/td&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Supplemental Cash Flow Information&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Nine Months Ended&lt;br /&gt; September 30&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-style: italic; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-style: italic; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; text-align: center"&gt;(in thousands)&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Cash paid for:&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="width: 70%; font-size: 10pt; padding-left: 10pt"&gt;Interest&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;37&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;51&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-left: 10pt"&gt;Income taxes, net of refunds&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3,167&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,178&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-left: 0pt"&gt;Non-cash investing and financing activities:&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-left: 10pt"&gt;Capital additions accrued but not yet paid&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;527&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;311&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt;&lt;/div&gt;</us-gaap:CashFlowSupplementalDisclosuresTextBlock>
  <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1 contextRef="i_2009-03-18_ClassOfWarrantOrRightAxis-PreferredSharePurchaseRightMember" decimals="INF" id="c23139366" unitRef="iso4217-usd-per-xbrli-shares">25</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
  <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight contextRef="i_2009-03-18_ClassOfWarrantOrRightAxis-PreferredSharePurchaseRightMember" decimals="INF" id="c23139367" unitRef="xbrli-shares">0.001</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight>
  <us-gaap:CommitmentsAndContingencies contextRef="i_2017-09-30" id="c23139021" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:CommitmentsAndContingencies contextRef="i_2016-12-31" id="c23139023" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:CommonStockParOrStatedValuePerShare contextRef="i_2017-09-30" decimals="INF" id="c23139037" unitRef="iso4217-usd-per-xbrli-shares">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
  <us-gaap:CommonStockParOrStatedValuePerShare contextRef="i_2016-12-31" decimals="INF" id="c23139038" unitRef="iso4217-usd-per-xbrli-shares">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
  <us-gaap:CommonStockParOrStatedValuePerShare contextRef="i_2009-03-18" decimals="INF" id="c23139361" unitRef="iso4217-usd-per-xbrli-shares">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
  <us-gaap:CommonStockSharesAuthorized contextRef="i_2017-09-30" decimals="INF" id="c23139039" unitRef="xbrli-shares">20000000</us-gaap:CommonStockSharesAuthorized>
  <us-gaap:CommonStockSharesAuthorized contextRef="i_2016-12-31" decimals="INF" id="c23139040" unitRef="xbrli-shares">20000000</us-gaap:CommonStockSharesAuthorized>
  <us-gaap:CommonStockSharesIssued contextRef="i_2017-09-30" decimals="INF" id="c23139041" unitRef="xbrli-shares">7299721</us-gaap:CommonStockSharesIssued>
  <us-gaap:CommonStockSharesIssued contextRef="i_2016-12-31" decimals="INF" id="c23139042" unitRef="xbrli-shares">7242023</us-gaap:CommonStockSharesIssued>
  <us-gaap:CommonStockSharesOutstanding contextRef="i_2017-09-30" decimals="INF" id="c23139043" unitRef="xbrli-shares">7270162</us-gaap:CommonStockSharesOutstanding>
  <us-gaap:CommonStockSharesOutstanding contextRef="i_2016-12-31" decimals="INF" id="c23139044" unitRef="xbrli-shares">7212464</us-gaap:CommonStockSharesOutstanding>
  <us-gaap:CommonStockValue contextRef="i_2017-09-30" decimals="-3" id="c23139035" unitRef="iso4217-usd">73000</us-gaap:CommonStockValue>
  <us-gaap:CommonStockValue contextRef="i_2016-12-31" decimals="-3" id="c23139036" unitRef="iso4217-usd">72000</us-gaap:CommonStockValue>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-MedicalMember" decimals="3" id="c23139404" unitRef="xbrli-pure">0.468</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-MedicalMember" decimals="3" id="c23139406" unitRef="xbrli-pure">0.445</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-MedicalMember" decimals="3" id="c23139408" unitRef="xbrli-pure">0.477</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-MedicalMember" decimals="3" id="c23139410" unitRef="xbrli-pure">0.447</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ConsumerMember" decimals="3" id="c23139412" unitRef="xbrli-pure">0.168</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ConsumerMember" decimals="3" id="c23139414" unitRef="xbrli-pure">0.152</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ConsumerMember" decimals="3" id="c23139416" unitRef="xbrli-pure">0.142</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ConsumerMember" decimals="3" id="c23139418" unitRef="xbrli-pure">0.14</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AutomotiveMember" decimals="3" id="c23139420" unitRef="xbrli-pure">0.145</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AutomotiveMember" decimals="3" id="c23139422" unitRef="xbrli-pure">0.187</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AutomotiveMember" decimals="3" id="c23139424" unitRef="xbrli-pure">0.163</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AutomotiveMember" decimals="3" id="c23139426" unitRef="xbrli-pure">0.187</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AerospaceDefenseMember" decimals="3" id="c23139428" unitRef="xbrli-pure">0.075</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AerospaceDefenseMember" decimals="3" id="c23139430" unitRef="xbrli-pure">0.068</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AerospaceDefenseMember" decimals="3" id="c23139432" unitRef="xbrli-pure">0.075</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AerospaceDefenseMember" decimals="3" id="c23139434" unitRef="xbrli-pure">0.072</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-IndustrialMember" decimals="3" id="c23139436" unitRef="xbrli-pure">0.073</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-IndustrialMember" decimals="3" id="c23139438" unitRef="xbrli-pure">0.075</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-IndustrialMember" decimals="3" id="c23139440" unitRef="xbrli-pure">0.069</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-IndustrialMember" decimals="3" id="c23139442" unitRef="xbrli-pure">0.077</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ElectronicsMember" decimals="3" id="c23139444" unitRef="xbrli-pure">0.071</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ElectronicsMember" decimals="3" id="c23139446" unitRef="xbrli-pure">0.075</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ElectronicsMember" decimals="3" id="c23139448" unitRef="xbrli-pure">0.074</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ElectronicsMember" decimals="3" id="c23139450" unitRef="xbrli-pure">0.078</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" decimals="3" id="c23139452" unitRef="xbrli-pure">1</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" decimals="3" id="c23139454" unitRef="xbrli-pure">1</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" decimals="3" id="c23139456" unitRef="xbrli-pure">1</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:ConcentrationRiskPercentage1 contextRef="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" decimals="3" id="c23139458" unitRef="xbrli-pure">1</us-gaap:ConcentrationRiskPercentage1>
  <us-gaap:CostOfGoodsSold contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139061" unitRef="iso4217-usd">27491000</us-gaap:CostOfGoodsSold>
  <us-gaap:CostOfGoodsSold contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139062" unitRef="iso4217-usd">28768000</us-gaap:CostOfGoodsSold>
  <us-gaap:CostOfGoodsSold contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139063" unitRef="iso4217-usd">82973000</us-gaap:CostOfGoodsSold>
  <us-gaap:CostOfGoodsSold contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139064" unitRef="iso4217-usd">83161000</us-gaap:CostOfGoodsSold>
  <us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent contextRef="i_2017-09-30" decimals="-3" id="c23139015" unitRef="iso4217-usd">1949000</us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent>
  <us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent contextRef="i_2016-12-31" decimals="-3" id="c23139016" unitRef="iso4217-usd">1682000</us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent>
  <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139138" unitRef="iso4217-usd">254000</us-gaap:DeferredIncomeTaxExpenseBenefit>
  <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139139" unitRef="iso4217-usd">224000</us-gaap:DeferredIncomeTaxExpenseBenefit>
  <us-gaap:DeferredTaxLiabilitiesNoncurrent contextRef="i_2017-09-30" decimals="-3" id="c23139013" unitRef="iso4217-usd">3713000</us-gaap:DeferredTaxLiabilitiesNoncurrent>
  <us-gaap:DeferredTaxLiabilitiesNoncurrent contextRef="i_2016-12-31" decimals="-3" id="c23139014" unitRef="iso4217-usd">3459000</us-gaap:DeferredTaxLiabilitiesNoncurrent>
  <us-gaap:DepreciationDepletionAndAmortization contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139130" unitRef="iso4217-usd">4171000</us-gaap:DepreciationDepletionAndAmortization>
  <us-gaap:DepreciationDepletionAndAmortization contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139131" unitRef="iso4217-usd">4109000</us-gaap:DepreciationDepletionAndAmortization>
  <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691418">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 0"&gt;&lt;/td&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;4&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Share-Based Compensation&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;Share-based compensation is measured at the grant date based on the fair value of the award and is recognized as an expense over the requisite service period (generally the vesting period of the equity grant).&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The Company issues share-based awards through several plans that are described in detail in the notes to the consolidated financial statements for the year ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December 31, 2016. &lt;/div&gt;The compensation cost charged against income for those plans is included in selling, general &amp;amp; administrative expenses as follows (in thousands):&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;!-- Field: Page; Sequence: 7; Value: 3 --&gt;   &lt;!-- Field: /Page --&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 27.9pt 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 27.9pt 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; color: #8497B0; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Three Months Ended&lt;br /&gt; September 30,&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Nine Months Ended&lt;br /&gt; September 30,&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid"&gt;Share-based compensation related to:&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 40%; font-size: 10pt; text-align: left"&gt;Common stock granted to the Board of Directors&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;105&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;105&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Common stock granted to the Chief Executive Officer&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;300&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;300&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Stock options granted to directors&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;105&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;105&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Stock options granted to employees&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;4&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;34&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;25&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;107&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Restricted Stock Unit awards to employees&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;102&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;95&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;307&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;254&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt"&gt;Total share-based compensation&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;206&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;229&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;842&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;871&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt; &lt;div style=" margin: 0pt 27.9pt 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt; text-align: center"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The total income tax benefit recognized in the condensed consolidated statements of income for share-based compensation arrangements was approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$106,000&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$67,000,&lt;/div&gt; respectively, for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;-month periods ended &lt;div style="display: inline; color: windowtext"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016,&lt;/div&gt; and approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$441,000&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$264,000,&lt;/div&gt; respectively, for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;&lt;/div&gt;.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The following is a summary of stock option activity under all plans for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;-month period ended &lt;div style="display: inline; color: windowtext"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017&lt;/div&gt;&lt;/div&gt;:&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Shares Under&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Options&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Weighted Average Exercise Price&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(per share)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Weighted Average Remaining&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Contractual Life&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(in years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Aggregate Intrinsic Value&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(in thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 40%; font-size: 10pt"&gt;Outstanding at December 31, 2016&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;232,578&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16.53&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-decoration: line-through"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-decoration: line-through; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Granted&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;12,336&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;27.05&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Exercised&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(51,285&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;26.88&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Expired&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right; border-bottom: Black 1pt solid"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(3,750&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;18.85&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Outstanding at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;189,879&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;17.41&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3.55&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,029&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Exercisable at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;184,879&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;17.23&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3.60&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,011&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt"&gt;Vested and expected to vest at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;189,879&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;17.41&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3.55&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,029&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;On &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; June 6, 2017, &lt;/div&gt;the Company granted options to its directors for the purchase of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;12,336&lt;/div&gt; shares of common stock at that day&amp;#x2019;s closing price of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$27.05.&lt;/div&gt; The compensation expense related to these grants was determined as the fair value of the options using the Black Scholes option pricing model based on the following assumptions:&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 74%; font-size: 10pt; text-align: left"&gt;Expected volatility&lt;/td&gt; &lt;td style="width: 2%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 2%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 21%; font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;29.1%&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Expected dividends&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;None&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Risk-free interest rate&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1.84%&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Exercise price&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$27.05&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Expected term (in years)&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5.8 &lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Weighted-average grant date fair value&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$8.51&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The stock volatility for each grant is determined based on a review of the experience of the weighted average of historical daily price changes of the Company&amp;#x2019;s common stock over the expected option term, and the risk-free interest rate is based on the U.S. Treasury yield curve in effect at the time of grant for periods corresponding with the expected term of the option. The expected term is estimated based on historical option exercise activity.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;During the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; color: windowtext"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;&lt;/div&gt;, the total intrinsic value of all options exercised (i.e., the difference between the market price on the exercise date and the price paid by the employees to exercise the options) was approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$577,000&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$564,000,&lt;/div&gt; respectively, and the total amount of consideration received by the Company from the exercised options was approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$802,000&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$529,000,&lt;/div&gt; respectively. At its discretion, the Company allows option holders to surrender previously owned common stock in lieu of paying the exercise price and withholding taxes. During the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month period ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;there were &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6,511&lt;/div&gt; shares &lt;div style="display: inline; color: windowtext"&gt;surrendered at an average market price of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$26.45.&lt;/div&gt;&lt;/div&gt; During the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month period ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2016 &lt;/div&gt;there were &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;no&lt;/div&gt; shares surrendered for this purpose.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt;      &lt;!-- Field: /Page --&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;On &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; February 2&lt;/div&gt;&lt;div style="display: inline; color: black"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1,&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2017,&lt;/div&gt; the Company&amp;#x2019;s Compensation Committee approved the award of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$400,000,&lt;/div&gt; payable in shares of common stock to the Company&amp;#x2019;s Chairman, Chief Executive Officer, and President under the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2003&lt;/div&gt; &lt;/div&gt;&lt;div style="display: inline; color: windowtext"&gt;Incentive Plan. The shares will be issued in &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December, 2017. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The following table summarizes information about Restricted Stock Units (&amp;#x201c;RSUs&amp;#x201d;) activity during the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month period ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017:&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Restricted&lt;br /&gt; Stock Units&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;Weighted Average&lt;br /&gt; Award Date&lt;br /&gt; Fair Value&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 70%; font-size: 10pt"&gt;Unvested at December 31, 2016&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;46,558&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;20.05&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Awarded&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;22,770&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;24.70&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Shares vested&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(13,419&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;23.54&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Unvested at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;55,909&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;20.96&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;At the Company&amp;#x2019;s discretion, RSU holders are given the option to net-share settle to cover the required minimum withholding tax, and the remaining amount is converted into the equivalent number of common shares. During the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016,&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;4,377&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3,889&lt;/div&gt; shares were surrendered at an average market price of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$24.50&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$22.82,&lt;/div&gt; respectively.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;div style="display: inline; color: windowtext"&gt;As of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017, &lt;/div&gt;the Company had approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$754,000&lt;/div&gt; of unrecognized compensation expense, which is expected to be recognized over a period of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3.5&lt;/div&gt; years&lt;/div&gt;.&lt;/div&gt;&lt;/div&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
  <us-gaap:EarningsPerShareBasic contextRef="d_2017-07-01_2017-09-30" decimals="INF" id="c23139110" unitRef="iso4217-usd-per-xbrli-shares">0.23</us-gaap:EarningsPerShareBasic>
  <us-gaap:EarningsPerShareBasic contextRef="d_2016-07-01_2016-09-30" decimals="INF" id="c23139111" unitRef="iso4217-usd-per-xbrli-shares">0.37</us-gaap:EarningsPerShareBasic>
  <us-gaap:EarningsPerShareBasic contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139112" unitRef="iso4217-usd-per-xbrli-shares">0.90</us-gaap:EarningsPerShareBasic>
  <us-gaap:EarningsPerShareBasic contextRef="d_2016-01-01_2016-09-30" decimals="INF" id="c23139113" unitRef="iso4217-usd-per-xbrli-shares">0.90</us-gaap:EarningsPerShareBasic>
  <us-gaap:EarningsPerShareDiluted contextRef="d_2017-07-01_2017-09-30" decimals="INF" id="c23139114" unitRef="iso4217-usd-per-xbrli-shares">0.23</us-gaap:EarningsPerShareDiluted>
  <us-gaap:EarningsPerShareDiluted contextRef="d_2016-07-01_2016-09-30" decimals="INF" id="c23139115" unitRef="iso4217-usd-per-xbrli-shares">0.37</us-gaap:EarningsPerShareDiluted>
  <us-gaap:EarningsPerShareDiluted contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139116" unitRef="iso4217-usd-per-xbrli-shares">0.89</us-gaap:EarningsPerShareDiluted>
  <us-gaap:EarningsPerShareDiluted contextRef="d_2016-01-01_2016-09-30" decimals="INF" id="c23139117" unitRef="iso4217-usd-per-xbrli-shares">0.89</us-gaap:EarningsPerShareDiluted>
  <us-gaap:EarningsPerShareTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691426">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Income Per Share&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;Basic income per share is based on the weighted average number of shares of common stock outstanding. Diluted income per share is based upon the weighted average number of common shares outstanding and dilutive common stock equivalent shares outstanding during each period.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt;  &lt;!-- Field: /Page --&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The weighted average number of shares used to compute basic and diluted net income per share consisted of the following (in thousands):&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;br /&gt; &amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;br /&gt; &amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Three Months Ended&lt;br /&gt; September 30,&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;br /&gt; &amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Nine Months Ended&lt;br /&gt; September 30,&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 40%; font-size: 10pt"&gt;Weighted average common shares outstanding, basic&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,264&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,195&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,240&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,183&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Weighted average common equivalent shares due to stock options and RSUs&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;89&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;87&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;86&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;82&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Weighted average common shares outstanding, diluted&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,353&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,282&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,326&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,265&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The computation of diluted earnings per share excludes the effect of the potential exercise of stock awards, including stock options, when the average market price of the common stock is lower than the exercise price of the related options during the period. These outstanding stock awards are &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; included in the computation of diluted income per share because the effect would be antidilutive. For the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; color: windowtext"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017&lt;/div&gt;&lt;/div&gt;, the number of stock awards excluded from the computation of diluted earnings per share for this reason was &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;zero&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;27,336,&lt;/div&gt; respectively. For the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; color: windowtext"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2016&lt;/div&gt;&lt;/div&gt;, the number of stock awards excluded from the computation of diluted earnings per share for this reason was &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;35,193&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;52,377,&lt;/div&gt; respectively.&lt;/div&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
  <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="d_2017-07-01_2017-09-30" decimals="3" id="c23139509" unitRef="xbrli-pure">0.336</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
  <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="d_2016-07-01_2016-09-30" decimals="3" id="c23139510" unitRef="xbrli-pure">0.35</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
  <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="d_2017-01-01_2017-09-30" decimals="3" id="c23139519" unitRef="xbrli-pure">0.333</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
  <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="d_2016-01-01_2016-09-30" decimals="3" id="c23139520" unitRef="xbrli-pure">0.354</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
  <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized contextRef="i_2017-09-30" decimals="INF" id="c23139276" unitRef="iso4217-usd">754000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
  <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="d_2017-01-01_2017-09-30" id="c23139277">P3Y182D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="d_2017-07-01_2017-09-30" decimals="INF" id="c23139242" unitRef="iso4217-usd">106000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="d_2016-07-01_2016-09-30" decimals="INF" id="c23139243" unitRef="iso4217-usd">67000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139246" unitRef="iso4217-usd">441000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
  <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="d_2016-01-01_2016-09-30" decimals="INF" id="c23139247" unitRef="iso4217-usd">264000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
  <us-gaap:ExcessTaxBenefitFromShareBasedCompensationFinancingActivities contextRef="d_2017-01-01_2017-09-30" id="c23139171" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:ExcessTaxBenefitFromShareBasedCompensationFinancingActivities contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139172" unitRef="iso4217-usd">126000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationFinancingActivities>
  <us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities contextRef="d_2017-01-01_2017-09-30" id="c23139136" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139137" unitRef="iso4217-usd">126000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities>
  <us-gaap:FairValueDisclosuresTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691417">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Fair Value of Financial Instruments&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;div style="display: inline; color: windowtext"&gt;The Company has financial instruments, such as accounts receivable, accounts payable, and accrued expenses, which are stated at carrying amounts that approximate fair value because of the short maturity of those instruments. The carrying amount of the Company&amp;#x2019;s long-term debt approximates fair value as the interest rate on the debt approximates the estimated borrowing rate currently available to the Company&lt;/div&gt;.&lt;/div&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
  <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="d_2017-01-01_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" id="c23139476">P14Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
  <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="d_2017-01-01_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" id="c23139477">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
  <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="d_2017-01-01_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" id="c23139478">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
  <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="d_2017-01-01_2017-09-30" id="c23139479" xs:nil="true"/>
  <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="d_2016-01-01_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" id="c23139492">P14Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
  <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="d_2016-01-01_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" id="c23139493">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
  <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="d_2016-01-01_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" id="c23139494">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
  <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="d_2016-01-01_2016-12-31" id="c23139495" xs:nil="true"/>
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" decimals="-3" id="c23139484" unitRef="iso4217-usd">429000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" decimals="-3" id="c23139485" unitRef="iso4217-usd">496000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" decimals="-3" id="c23139486" unitRef="iso4217-usd">1983000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="i_2017-09-30" decimals="-3" id="c23139487" unitRef="iso4217-usd">2908000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" decimals="-3" id="c23139500" unitRef="iso4217-usd">429000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" decimals="-3" id="c23139501" unitRef="iso4217-usd">449000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" decimals="-3" id="c23139502" unitRef="iso4217-usd">1791000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="i_2016-12-31" decimals="-3" id="c23139503" unitRef="iso4217-usd">2669000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
  <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear contextRef="i_2017-09-30" decimals="INF" id="c23139471" unitRef="iso4217-usd">79000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" decimals="-3" id="c23139480" unitRef="iso4217-usd">429000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" decimals="-3" id="c23139481" unitRef="iso4217-usd">512000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" decimals="-3" id="c23139482" unitRef="iso4217-usd">2046000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="i_2017-09-30" decimals="-3" id="c23139483" unitRef="iso4217-usd">2987000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" decimals="-3" id="c23139496" unitRef="iso4217-usd">429000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" decimals="-3" id="c23139497" unitRef="iso4217-usd">512000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" decimals="-3" id="c23139498" unitRef="iso4217-usd">2046000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="i_2016-12-31" decimals="-3" id="c23139499" unitRef="iso4217-usd">2987000</us-gaap:FiniteLivedIntangibleAssetsGross>
  <us-gaap:GainLossOnDispositionOfAssets contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139132" unitRef="iso4217-usd">-3000</us-gaap:GainLossOnDispositionOfAssets>
  <us-gaap:GainLossOnDispositionOfAssets contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139133" unitRef="iso4217-usd">4000</us-gaap:GainLossOnDispositionOfAssets>
  <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="d_2017-07-01_2017-09-30" id="c23139081" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="d_2016-07-01_2016-09-30" id="c23139082" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139083" unitRef="iso4217-usd">-3000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
  <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139084" unitRef="iso4217-usd">4000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
  <us-gaap:GainLossRelatedToLitigationSettlement contextRef="d_2017-07-01_2017-09-30" id="c23139077" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:GainLossRelatedToLitigationSettlement contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139078" unitRef="iso4217-usd">1681000</us-gaap:GainLossRelatedToLitigationSettlement>
  <us-gaap:GainLossRelatedToLitigationSettlement contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139079" unitRef="iso4217-usd">121000</us-gaap:GainLossRelatedToLitigationSettlement>
  <us-gaap:GainLossRelatedToLitigationSettlement contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139080" unitRef="iso4217-usd">2114000</us-gaap:GainLossRelatedToLitigationSettlement>
  <us-gaap:Goodwill contextRef="i_2017-09-30" decimals="-3" id="c23138995" unitRef="iso4217-usd">7322000</us-gaap:Goodwill>
  <us-gaap:Goodwill contextRef="i_2016-12-31" decimals="-3" id="c23138996" unitRef="iso4217-usd">7322000</us-gaap:Goodwill>
  <us-gaap:GrossProfit contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139065" unitRef="iso4217-usd">8193000</us-gaap:GrossProfit>
  <us-gaap:GrossProfit contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139066" unitRef="iso4217-usd">8452000</us-gaap:GrossProfit>
  <us-gaap:GrossProfit contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139067" unitRef="iso4217-usd">27650000</us-gaap:GrossProfit>
  <us-gaap:GrossProfit contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139068" unitRef="iso4217-usd">26465000</us-gaap:GrossProfit>
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139097" unitRef="iso4217-usd">2551000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139098" unitRef="iso4217-usd">4106000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139099" unitRef="iso4217-usd">9743000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
  <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139100" unitRef="iso4217-usd">10029000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
  <us-gaap:IncomeTaxDisclosureTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691432">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;10&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Income Taxes&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;The income tax expense included in the accompanying unaudited condensed consolidated statements of income principally relates to the Company&amp;#x2019;s proportionate share of the pre-tax income of its wholly-owned subsidiaries. The determination of income tax expense for interim reporting purposes is based upon the estimated effective tax rate for the year, adjusted for the impact of any discrete items which are accounted for in the period in which they occur.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;The Company recorded tax expense of approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;33.6%&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;35.0%&lt;/div&gt; of income before income tax expense, respectively, for each of the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016.&lt;/div&gt; The decrease in the effective tax rate for the current period is due to a tax benefit of approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$37,000&lt;/div&gt; recorded in the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;-month period ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;as a result of the adoption of ASU &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;09&lt;/div&gt; on &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; January 1, 2017 (&lt;/div&gt;See Note &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1&lt;/div&gt;). The Company recorded a tax expense of approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;33.3%&lt;/div&gt; and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;35.4%&lt;/div&gt; of income before income tax expense for each of the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016.&lt;/div&gt; The decrease in the effective tax rate for the current period is due to a tax benefit of approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$162,000&lt;/div&gt; recorded in the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month period ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;as a result of the adoption of ASU &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;09&lt;/div&gt; on &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; January 1, 2017 (&lt;/div&gt;See Note &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1&lt;/div&gt;); and a tax assessment of approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$40,000&lt;/div&gt; from &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;one&lt;/div&gt; jurisdiction recorded in the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;first&lt;/div&gt; quarter of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016.&lt;/div&gt; The Company notes the potential for volatility in its effective tax rate, as any windfall or shortfall tax benefits related to its share-based compensation plans will be recorded directly into income tax expense.&lt;/div&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
  <us-gaap:IncomeTaxExpenseBenefit contextRef="d_2017-07-01_2017-09-30_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201609Member" decimals="INF" id="c23139513" unitRef="iso4217-usd">-37000</us-gaap:IncomeTaxExpenseBenefit>
  <us-gaap:IncomeTaxExpenseBenefit contextRef="d_2017-01-01_2017-09-30_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201609Member" decimals="INF" id="c23139523" unitRef="iso4217-usd">-162000</us-gaap:IncomeTaxExpenseBenefit>
  <us-gaap:IncomeTaxExpenseBenefit contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139101" unitRef="iso4217-usd">856000</us-gaap:IncomeTaxExpenseBenefit>
  <us-gaap:IncomeTaxExpenseBenefit contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139102" unitRef="iso4217-usd">1437000</us-gaap:IncomeTaxExpenseBenefit>
  <us-gaap:IncomeTaxExpenseBenefit contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139103" unitRef="iso4217-usd">3248000</us-gaap:IncomeTaxExpenseBenefit>
  <us-gaap:IncomeTaxExpenseBenefit contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139104" unitRef="iso4217-usd">3550000</us-gaap:IncomeTaxExpenseBenefit>
  <us-gaap:IncomeTaxesPaidNet contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139233" unitRef="iso4217-usd">3167000</us-gaap:IncomeTaxesPaidNet>
  <us-gaap:IncomeTaxesPaidNet contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139234" unitRef="iso4217-usd">2178000</us-gaap:IncomeTaxesPaidNet>
  <us-gaap:IncomeTaxesReceivable contextRef="i_2017-09-30" decimals="-3" id="c23138985" unitRef="iso4217-usd">979000</us-gaap:IncomeTaxesReceivable>
  <us-gaap:IncomeTaxesReceivable contextRef="i_2016-12-31" decimals="-3" id="c23138986" unitRef="iso4217-usd">807000</us-gaap:IncomeTaxesReceivable>
  <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139151" unitRef="iso4217-usd">429000</us-gaap:IncreaseDecreaseInAccountsPayable>
  <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139152" unitRef="iso4217-usd">197000</us-gaap:IncreaseDecreaseInAccountsPayable>
  <us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="d_2016-01-01_2016-09-30_StatementScenarioAxis-RestatementAdjustmentMember" decimals="INF" id="c23139224" unitRef="iso4217-usd">-315000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
  <us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139153" unitRef="iso4217-usd">658000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
  <us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139154" unitRef="iso4217-usd">-317000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
  <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="d_2016-01-01_2016-09-30_StatementScenarioAxis-RestatementAdjustmentMember" decimals="INF" id="c23139223" unitRef="iso4217-usd">315000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
  <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139147" unitRef="iso4217-usd">172000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
  <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139148" unitRef="iso4217-usd">-1146000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
  <us-gaap:IncreaseDecreaseInInventories contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139143" unitRef="iso4217-usd">-1015000</us-gaap:IncreaseDecreaseInInventories>
  <us-gaap:IncreaseDecreaseInInventories contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139144" unitRef="iso4217-usd">366000</us-gaap:IncreaseDecreaseInInventories>
  <us-gaap:IncreaseDecreaseInOtherOperatingAssets contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139149" unitRef="iso4217-usd">138000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
  <us-gaap:IncreaseDecreaseInOtherOperatingAssets contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139150" unitRef="iso4217-usd">93000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
  <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139155" unitRef="iso4217-usd">201000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
  <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139156" unitRef="iso4217-usd">205000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
  <us-gaap:IncreaseDecreaseInPrepaidExpense contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139145" unitRef="iso4217-usd">-47000</us-gaap:IncreaseDecreaseInPrepaidExpense>
  <us-gaap:IncreaseDecreaseInPrepaidExpense contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139146" unitRef="iso4217-usd">1231000</us-gaap:IncreaseDecreaseInPrepaidExpense>
  <us-gaap:IncreaseDecreaseInReceivables contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139141" unitRef="iso4217-usd">795000</us-gaap:IncreaseDecreaseInReceivables>
  <us-gaap:IncreaseDecreaseInReceivables contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139142" unitRef="iso4217-usd">4826000</us-gaap:IncreaseDecreaseInReceivables>
  <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139384" unitRef="xbrli-shares">89000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
  <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139385" unitRef="xbrli-shares">87000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
  <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139386" unitRef="xbrli-shares">86000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
  <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139387" unitRef="xbrli-shares">82000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
  <us-gaap:IntangibleAssetsDisclosureTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691430">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 0"&gt;&lt;/td&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;9&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Other Intangible Assets&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;The carrying values of the Company&amp;#x2019;s definite lived intangible assets as of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December&amp;nbsp;&lt;/div&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;31,&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016,&lt;/div&gt; are as follows (in thousands):&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Patents&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Non-&lt;br /&gt; Compete&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Customer&lt;br /&gt; List&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Total&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;Estimated useful life (in years)&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="width: 40%; font-size: 10pt"&gt;Gross amount at September 30, 2017&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;429&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;512&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,046&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,987&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;Accumulated amortization at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(429&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(496&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(1,983&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(2,908&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Net balance at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;63&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;79&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Estimated useful life (in years)&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5 &lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;Gross amount at December 31, 2016&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;429&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;512&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,046&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,987&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;Accumulated amortization at December 31, 2016&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(429&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(449&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(1,791&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(2,669&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Net balance at December 31, 2016&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;63&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;255&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;318&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;Amortization expense related to intangible assets was approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$79,000&lt;/div&gt;&lt;/div&gt; for each of the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016,&lt;/div&gt; and was approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$239,000&lt;/div&gt;&lt;/div&gt; for each of the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016.&lt;/div&gt; As of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017, &lt;/div&gt;the estimated remaining amortization expense for &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2017&lt;/div&gt; is &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$79,000.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" id="c23139488" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" decimals="-3" id="c23139489" unitRef="iso4217-usd">16000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" decimals="-3" id="c23139490" unitRef="iso4217-usd">63000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="i_2017-09-30" decimals="-3" id="c23139491" unitRef="iso4217-usd">79000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember" id="c23139504" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember" decimals="-3" id="c23139505" unitRef="iso4217-usd">63000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember" decimals="-3" id="c23139506" unitRef="iso4217-usd">255000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
  <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="i_2016-12-31" decimals="-3" id="c23139507" unitRef="iso4217-usd">318000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
  <us-gaap:InterestExpense contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139093" unitRef="iso4217-usd">12000</us-gaap:InterestExpense>
  <us-gaap:InterestExpense contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139094" unitRef="iso4217-usd">17000</us-gaap:InterestExpense>
  <us-gaap:InterestExpense contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139095" unitRef="iso4217-usd">39000</us-gaap:InterestExpense>
  <us-gaap:InterestExpense contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139096" unitRef="iso4217-usd">53000</us-gaap:InterestExpense>
  <us-gaap:InterestPaidNet contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139231" unitRef="iso4217-usd">37000</us-gaap:InterestPaidNet>
  <us-gaap:InterestPaidNet contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139232" unitRef="iso4217-usd">51000</us-gaap:InterestPaidNet>
  <us-gaap:InventoryDisclosureTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691423">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Inventories&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;Inventories are stated at the lower of cost (&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;first&lt;/div&gt;-in, &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;first&lt;/div&gt;-out) or net realizable value, and consist of the following at the stated dates (in thousands):&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;September 30,&lt;br /&gt; 2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;December 31,&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;2016&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 70%; font-size: 10pt; text-align: left"&gt;Raw materials&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6,660&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,111&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Work in process&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1,161&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1,354&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Finished goods&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5,315&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5,686&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt"&gt;Total inventory&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;13,136&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14,151&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
  <us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="i_2017-09-30" decimals="-3" id="c23139355" unitRef="iso4217-usd">5315000</us-gaap:InventoryFinishedGoodsNetOfReserves>
  <us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="i_2016-12-31" decimals="-3" id="c23139356" unitRef="iso4217-usd">5686000</us-gaap:InventoryFinishedGoodsNetOfReserves>
  <us-gaap:InventoryNet contextRef="i_2017-09-30" decimals="-3" id="c23139357" unitRef="iso4217-usd">13136000</us-gaap:InventoryNet>
  <us-gaap:InventoryNet contextRef="i_2016-12-31" decimals="-3" id="c23139358" unitRef="iso4217-usd">14151000</us-gaap:InventoryNet>
  <us-gaap:InventoryRawMaterialsNetOfReserves contextRef="i_2017-09-30" decimals="-3" id="c23139351" unitRef="iso4217-usd">6660000</us-gaap:InventoryRawMaterialsNetOfReserves>
  <us-gaap:InventoryRawMaterialsNetOfReserves contextRef="i_2016-12-31" decimals="-3" id="c23139352" unitRef="iso4217-usd">7111000</us-gaap:InventoryRawMaterialsNetOfReserves>
  <us-gaap:InventoryWorkInProcessNetOfReserves contextRef="i_2017-09-30" decimals="-3" id="c23139353" unitRef="iso4217-usd">1161000</us-gaap:InventoryWorkInProcessNetOfReserves>
  <us-gaap:InventoryWorkInProcessNetOfReserves contextRef="i_2016-12-31" decimals="-3" id="c23139354" unitRef="iso4217-usd">1354000</us-gaap:InventoryWorkInProcessNetOfReserves>
  <us-gaap:InvestmentIncomeInterest contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139089" unitRef="iso4217-usd">63000</us-gaap:InvestmentIncomeInterest>
  <us-gaap:InvestmentIncomeInterest contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139090" unitRef="iso4217-usd">42000</us-gaap:InvestmentIncomeInterest>
  <us-gaap:InvestmentIncomeInterest contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139091" unitRef="iso4217-usd">147000</us-gaap:InvestmentIncomeInterest>
  <us-gaap:InvestmentIncomeInterest contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139092" unitRef="iso4217-usd">104000</us-gaap:InvestmentIncomeInterest>
  <us-gaap:LegalMattersAndContingenciesTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691436">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 0"&gt;&lt;/td&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;13&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Material Overcharge Settlement&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin: 0pt 0; font-size: 10pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;The Company was a participant in a class action lawsuit against a number of polyurethane foam suppliers (&amp;#x201c;Defendants&amp;#x201d;) that was settled during the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;second&lt;/div&gt; quarter of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016.&lt;/div&gt; The suit was filed to recover damages and obtain injunctive relief for Defendants&amp;#x2019; alleged violations of the federal antitrust laws with respect to the fixing of prices of polyurethane foam sold from &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; January 1, 1999 &lt;/div&gt;through &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; August 2010. &lt;/div&gt;During the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017, &lt;/div&gt;the Company received settlement amounts of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$0&lt;/div&gt; and approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$121,000,&lt;/div&gt; respectively. During the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2016, &lt;/div&gt;the Company received settlement amounts of approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$1.7&lt;/div&gt; million and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$2.1&lt;/div&gt; million, respectively. The settlement amounts for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt; are recorded as &amp;#x201c;Material overcharge settlement&amp;#x201d; in the operating income section of the Condensed Consolidated Statements of Income.&lt;/div&gt;&lt;/div&gt;</us-gaap:LegalMattersAndContingenciesTextBlock>
  <us-gaap:Liabilities contextRef="i_2017-09-30" decimals="-3" id="c23139019" unitRef="iso4217-usd">16178000</us-gaap:Liabilities>
  <us-gaap:Liabilities contextRef="i_2016-12-31" decimals="-3" id="c23139020" unitRef="iso4217-usd">14881000</us-gaap:Liabilities>
  <us-gaap:LiabilitiesAndStockholdersEquity contextRef="i_2017-09-30" decimals="-3" id="c23139055" unitRef="iso4217-usd">137091000</us-gaap:LiabilitiesAndStockholdersEquity>
  <us-gaap:LiabilitiesAndStockholdersEquity contextRef="i_2016-12-31" decimals="-3" id="c23139056" unitRef="iso4217-usd">127934000</us-gaap:LiabilitiesAndStockholdersEquity>
  <us-gaap:LiabilitiesCurrent contextRef="i_2017-09-30" decimals="-3" id="c23139011" unitRef="iso4217-usd">10398000</us-gaap:LiabilitiesCurrent>
  <us-gaap:LiabilitiesCurrent contextRef="i_2016-12-31" decimals="-3" id="c23139012" unitRef="iso4217-usd">9556000</us-gaap:LiabilitiesCurrent>
  <us-gaap:LitigationSettlementAmountAwardedFromOtherParty contextRef="d_2017-07-01_2017-09-30_LitigationCaseAxis-PolyurethaneFoamAntitrustLawsuitMember" decimals="INF" id="c23139568" unitRef="iso4217-usd">0</us-gaap:LitigationSettlementAmountAwardedFromOtherParty>
  <us-gaap:LitigationSettlementAmountAwardedFromOtherParty contextRef="d_2017-01-01_2017-09-30_LitigationCaseAxis-PolyurethaneFoamAntitrustLawsuitMember" decimals="INF" id="c23139569" unitRef="iso4217-usd">121000</us-gaap:LitigationSettlementAmountAwardedFromOtherParty>
  <us-gaap:LitigationSettlementAmountAwardedFromOtherParty contextRef="d_2016-07-01_2016-09-30_LitigationCaseAxis-PolyurethaneFoamAntitrustLawsuitMember" decimals="INF" id="c23139572" unitRef="iso4217-usd">1700000</us-gaap:LitigationSettlementAmountAwardedFromOtherParty>
  <us-gaap:LitigationSettlementAmountAwardedFromOtherParty contextRef="d_2016-01-01_2016-09-30_LitigationCaseAxis-PolyurethaneFoamAntitrustLawsuitMember" decimals="INF" id="c23139573" unitRef="iso4217-usd">2100000</us-gaap:LitigationSettlementAmountAwardedFromOtherParty>
  <us-gaap:LongTermDebtCurrent contextRef="i_2017-09-30" decimals="-3" id="c23139009" unitRef="iso4217-usd">84000</us-gaap:LongTermDebtCurrent>
  <us-gaap:LongTermDebtCurrent contextRef="i_2016-12-31" decimals="-3" id="c23139010" unitRef="iso4217-usd">856000</us-gaap:LongTermDebtCurrent>
  <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139175" unitRef="iso4217-usd">-249000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
  <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139176" unitRef="iso4217-usd">-192000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
  <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139164" unitRef="iso4217-usd">-6874000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
  <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139165" unitRef="iso4217-usd">-5762000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
  <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139157" unitRef="iso4217-usd">13010000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
  <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139158" unitRef="iso4217-usd">6268000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
  <us-gaap:NetIncomeLoss contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139105" unitRef="iso4217-usd">1695000</us-gaap:NetIncomeLoss>
  <us-gaap:NetIncomeLoss contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139106" unitRef="iso4217-usd">2669000</us-gaap:NetIncomeLoss>
  <us-gaap:NetIncomeLoss contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139107" unitRef="iso4217-usd">6495000</us-gaap:NetIncomeLoss>
  <us-gaap:NetIncomeLoss contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139108" unitRef="iso4217-usd">6479000</us-gaap:NetIncomeLoss>
  <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="d_2017-01-01_2017-09-30" id="c23140139">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;div style="display: inline; font-style: italic;"&gt;Recent Accounting Pronouncements&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;div style="display: inline; font-style: italic;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;In &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; May 2014, &lt;/div&gt;the Financial Accounting Standards Board (FASB) issued Accounting Standards Update (ASU) &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2014&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;09,&lt;/div&gt; &lt;div style="display: inline; font-style: italic;"&gt;Revenue from Contracts with Customers&lt;/div&gt;, which requires an entity to recognize the amount of revenue to which it expects to be entitled for the transfer of promised goods or services to customers. This standard will replace most existing revenue recognition guidance when it becomes effective. The standard permits the use of either the full retrospective or modified retrospective transition methods. The Company expects to adopt the standard in the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;first&lt;/div&gt; quarter of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2018&lt;/div&gt; using the modified retrospective transition method. The Company has identified its primary revenue streams, completed a preliminary review of a representative sample of contracts with its customers and is in the process of evaluating the impact of this ASU on its revenue streams and accounting policies. Based on the procedures completed to date, the Company expects that for a significant portion of its business, the recognition of revenue under the updated standard will occur at a point in time, which is consistent with current practice. The Company has identified certain revenue streams for which the recognition of revenue &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; may &lt;/div&gt;occur over time, which is a change from current practice. These revenue streams include certain customer stocking commitments. Additionally, the Company has identified certain revenue streams for which the recognition of revenue &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; may &lt;/div&gt;be deferred, which is also a change from current practice. These revenue streams include certain tooling sales. The Company does &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; expect that the impact of these changes in the timing of revenue recognition for these items to be significant to the financial statements. The Company is also in the process of updating its internal controls and drafting the expanded disclosures as required by this ASU. &lt;div style="display: inline; color: windowtext"&gt;The Company does &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; expect significant changes to its systems or internal controls. As the Company continues thr&lt;/div&gt;ough the adoption process, it is possible that these preliminary conclusions &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; may &lt;/div&gt;change.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;In &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; February 2016, &lt;/div&gt;the FASB issued ASU &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt;&amp;nbsp;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;02,&lt;/div&gt; &lt;div style="display: inline; font-style: italic;"&gt;Leases.&lt;/div&gt; The guidance in this ASU supersedes the leasing guidance in Topic &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;840,&lt;/div&gt; &lt;div style="display: inline; font-style: italic;"&gt;Leases&lt;/div&gt;. Under the new guidance, lessees are required to recognize lease assets and lease liabilities on the balance sheet for those leases previously classified as operating leases. The amendments in ASU &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt;&amp;nbsp;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;02&lt;/div&gt; are effective for annual reporting periods beginning after &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December&amp;nbsp;&lt;/div&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;15,&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2018,&lt;/div&gt; including interim periods within that reporting period with early adoption permitted. The Company is evaluating the impact of adopting this ASU on its consolidated financial position and results of operations.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;In &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; March 2016, &lt;/div&gt;the FASB issued ASU &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;09,&lt;/div&gt; &lt;div style="display: inline; font-style: italic;"&gt;Improvements to Employee Share Based Payment Accounting&lt;/div&gt;. This ASU simplifies several aspects of the accounting for share-based payment transactions, including income tax consequences, classification of awards, forfeitures and classification on the statement of cash flows. The Company adopted this ASU on &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; January 1, 2017. &lt;/div&gt;As the Company has &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; had a significant amount of forfeitures historically, under the provisions of this ASU the Company has elected to account for forfeitures as they occur, rather than estimate expected forfeitures. The impact of adopting this update to the Company&amp;#x2019;s Consolidated Financial Statements will depend on market factors and the timing and intrinsic value of future share-based compensation award vests and exercises. Subsequent to adoption, the Company notes the potential for volatility in its effective tax rate as any windfall or shortfall tax benefits related to its share-based compensation plans will be recorded directly to income tax expense in the Condensed Consolidated Statement of Income.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
  <us-gaap:OperatingIncomeLoss contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139085" unitRef="iso4217-usd">2500000</us-gaap:OperatingIncomeLoss>
  <us-gaap:OperatingIncomeLoss contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139086" unitRef="iso4217-usd">4081000</us-gaap:OperatingIncomeLoss>
  <us-gaap:OperatingIncomeLoss contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139087" unitRef="iso4217-usd">9635000</us-gaap:OperatingIncomeLoss>
  <us-gaap:OperatingIncomeLoss contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139088" unitRef="iso4217-usd">9978000</us-gaap:OperatingIncomeLoss>
  <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691414">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 0"&gt;&lt;/td&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Basis of Presentation&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The interim condensed consolidated financial statements of UFP Technologies,&amp;nbsp;Inc. (the &amp;#x201c;Company&amp;#x201d;) presented herein, have been prepared pursuant to the rules&amp;nbsp;of the Securities and Exchange Commission for quarterly reports on Form&amp;nbsp;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;10&lt;/div&gt;-Q and do &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; include all the information and note disclosures required by accounting principles generally accepted in the United States of America. These statements should be read in conjunction with the consolidated financial statements and notes thereto for the year ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December 31, 2016, &lt;/div&gt;included in the Company's &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt; Annual Report on Form&amp;nbsp;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;10&lt;/div&gt;-K, as filed with the Securities and Exchange Commission.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The condensed consolidated balance sheet as of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017, &lt;/div&gt;the condensed consolidated statements of income for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016,&lt;/div&gt; and the condensed consolidated statements of cash flows for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt; are unaudited but, in the opinion of management, include all adjustments (consisting of normal, recurring adjustments) necessary for a fair presentation of results for these interim periods. The condensed consolidated balance sheet as of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December 31, 2016 &lt;/div&gt;has been derived from the Company&amp;#x2019;s annual financial statements that were audited by an independent registered public accounting firm, but does &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; include all of the information and footnotes required for complete annual financial statements.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;The results of operations for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-months periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017, &lt;/div&gt;are &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; necessarily indicative of the results to be expected for the entire fiscal year ending &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December 31, 2017.&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;div style="display: inline; font-style: italic;"&gt;Recent Accounting Pronouncements&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;div style="display: inline; font-style: italic;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;In &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; May 2014, &lt;/div&gt;the Financial Accounting Standards Board (FASB) issued Accounting Standards Update (ASU) &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2014&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;09,&lt;/div&gt; &lt;div style="display: inline; font-style: italic;"&gt;Revenue from Contracts with Customers&lt;/div&gt;, which requires an entity to recognize the amount of revenue to which it expects to be entitled for the transfer of promised goods or services to customers. This standard will replace most existing revenue recognition guidance when it becomes effective. The standard permits the use of either the full retrospective or modified retrospective transition methods. The Company expects to adopt the standard in the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;first&lt;/div&gt; quarter of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2018&lt;/div&gt; using the modified retrospective transition method. The Company has identified its primary revenue streams, completed a preliminary review of a representative sample of contracts with its customers and is in the process of evaluating the impact of this ASU on its revenue streams and accounting policies. Based on the procedures completed to date, the Company expects that for a significant portion of its business, the recognition of revenue under the updated standard will occur at a point in time, which is consistent with current practice. The Company has identified certain revenue streams for which the recognition of revenue &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; may &lt;/div&gt;occur over time, which is a change from current practice. These revenue streams include certain customer stocking commitments. Additionally, the Company has identified certain revenue streams for which the recognition of revenue &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; may &lt;/div&gt;be deferred, which is also a change from current practice. These revenue streams include certain tooling sales. The Company does &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; expect that the impact of these changes in the timing of revenue recognition for these items to be significant to the financial statements. The Company is also in the process of updating its internal controls and drafting the expanded disclosures as required by this ASU. &lt;div style="display: inline; color: windowtext"&gt;The Company does &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; expect significant changes to its systems or internal controls. As the Company continues thr&lt;/div&gt;ough the adoption process, it is possible that these preliminary conclusions &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; may &lt;/div&gt;change.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;In &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; February 2016, &lt;/div&gt;the FASB issued ASU &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt;&amp;nbsp;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;02,&lt;/div&gt; &lt;div style="display: inline; font-style: italic;"&gt;Leases.&lt;/div&gt; The guidance in this ASU supersedes the leasing guidance in Topic &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;840,&lt;/div&gt; &lt;div style="display: inline; font-style: italic;"&gt;Leases&lt;/div&gt;. Under the new guidance, lessees are required to recognize lease assets and lease liabilities on the balance sheet for those leases previously classified as operating leases. The amendments in ASU &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt;&amp;nbsp;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;02&lt;/div&gt; are effective for annual reporting periods beginning after &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December&amp;nbsp;&lt;/div&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;15,&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2018,&lt;/div&gt; including interim periods within that reporting period with early adoption permitted. The Company is evaluating the impact of adopting this ASU on its consolidated financial position and results of operations.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;In &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; March 2016, &lt;/div&gt;the FASB issued ASU &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No.&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt;-&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;09,&lt;/div&gt; &lt;div style="display: inline; font-style: italic;"&gt;Improvements to Employee Share Based Payment Accounting&lt;/div&gt;. This ASU simplifies several aspects of the accounting for share-based payment transactions, including income tax consequences, classification of awards, forfeitures and classification on the statement of cash flows. The Company adopted this ASU on &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; January 1, 2017. &lt;/div&gt;As the Company has &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; had a significant amount of forfeitures historically, under the provisions of this ASU the Company has elected to account for forfeitures as they occur, rather than estimate expected forfeitures. The impact of adopting this update to the Company&amp;#x2019;s Consolidated Financial Statements will depend on market factors and the timing and intrinsic value of future share-based compensation award vests and exercises. Subsequent to adoption, the Company notes the potential for volatility in its effective tax rate as any windfall or shortfall tax benefits related to its share-based compensation plans will be recorded directly to income tax expense in the Condensed Consolidated Statement of Income.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;!-- Field: Page; Sequence: 6; Value: 3 --&gt;   &lt;!-- Field: /Page --&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;/div&gt;&lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&lt;div style="display: inline; font-style: italic;"&gt;Revisions&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"&gt;Certain revisions have been made to the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016&lt;/div&gt; Condensed Consolidated Statement of Cash Flows to conform to the current year presentation relating to a reserve for uncertain tax positions and to cash paid for capital expenditures. The reclassification of a reserve for uncertain tax positions resulted in an increase to the change in refundable income taxes of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$315,000&lt;/div&gt; and a decrease to the change in accrued expenses of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$315,000.&lt;/div&gt; A change in presentation of cash paid for capital expenditures resulted in a decrease of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$311,000&lt;/div&gt; in both the change in accounts payable and in additions to property, plant and equipment, net. These revisions had &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;no&lt;/div&gt; impact on previously reported net income and are deemed immaterial to the previously issued financial statements.&lt;/div&gt;&lt;/div&gt;</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
  <us-gaap:OtherAssetsNoncurrent contextRef="i_2017-09-30" decimals="-3" id="c23138999" unitRef="iso4217-usd">2069000</us-gaap:OtherAssetsNoncurrent>
  <us-gaap:OtherAssetsNoncurrent contextRef="i_2016-12-31" decimals="-3" id="c23139000" unitRef="iso4217-usd">1931000</us-gaap:OtherAssetsNoncurrent>
  <us-gaap:OtherLiabilitiesNoncurrent contextRef="i_2017-09-30" decimals="-3" id="c23139017" unitRef="iso4217-usd">118000</us-gaap:OtherLiabilitiesNoncurrent>
  <us-gaap:OtherLiabilitiesNoncurrent contextRef="i_2016-12-31" decimals="-3" id="c23139018" unitRef="iso4217-usd">184000</us-gaap:OtherLiabilitiesNoncurrent>
  <us-gaap:PaymentsForRestructuring contextRef="d_2015-03-18_2015-03-18_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="INF" id="c23139543" unitRef="iso4217-usd">2000000</us-gaap:PaymentsForRestructuring>
  <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139173" unitRef="iso4217-usd">107000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
  <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139174" unitRef="iso4217-usd">89000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
  <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="d_2016-01-01_2016-09-30_StatementScenarioAxis-RestatementAdjustmentMember" decimals="INF" id="c23139225" unitRef="iso4217-usd">-311000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
  <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139160" unitRef="iso4217-usd">6880000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
  <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139161" unitRef="iso4217-usd">5766000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
  <us-gaap:PreferredStockParOrStatedValuePerShare contextRef="i_2017-09-30" decimals="INF" id="c23139027" unitRef="iso4217-usd-per-xbrli-shares">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
  <us-gaap:PreferredStockParOrStatedValuePerShare contextRef="i_2016-12-31" decimals="INF" id="c23139028" unitRef="iso4217-usd-per-xbrli-shares">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
  <us-gaap:PreferredStockParOrStatedValuePerShare contextRef="i_2009-03-18_StatementClassOfStockAxis-SeriesAJuniorParticipatingPreferredStockMember" decimals="INF" id="c23139365" unitRef="iso4217-usd-per-xbrli-shares">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
  <us-gaap:PreferredStockSharesAuthorized contextRef="i_2017-09-30" decimals="INF" id="c23139029" unitRef="xbrli-shares">1000000</us-gaap:PreferredStockSharesAuthorized>
  <us-gaap:PreferredStockSharesAuthorized contextRef="i_2016-12-31" decimals="INF" id="c23139030" unitRef="xbrli-shares">1000000</us-gaap:PreferredStockSharesAuthorized>
  <us-gaap:PreferredStockSharesIssued contextRef="i_2017-09-30" decimals="INF" id="c23139031" unitRef="xbrli-shares">0</us-gaap:PreferredStockSharesIssued>
  <us-gaap:PreferredStockSharesIssued contextRef="i_2016-12-31" decimals="INF" id="c23139032" unitRef="xbrli-shares">0</us-gaap:PreferredStockSharesIssued>
  <us-gaap:PreferredStockSharesOutstanding contextRef="i_2017-09-30" decimals="INF" id="c23139033" unitRef="xbrli-shares">0</us-gaap:PreferredStockSharesOutstanding>
  <us-gaap:PreferredStockSharesOutstanding contextRef="i_2016-12-31" decimals="INF" id="c23139034" unitRef="xbrli-shares">0</us-gaap:PreferredStockSharesOutstanding>
  <us-gaap:PreferredStockValue contextRef="i_2017-09-30" decimals="-3" id="c23139025" unitRef="iso4217-usd">0</us-gaap:PreferredStockValue>
  <us-gaap:PreferredStockValue contextRef="i_2016-12-31" decimals="-3" id="c23139026" unitRef="iso4217-usd">0</us-gaap:PreferredStockValue>
  <us-gaap:PrepaidExpenseCurrent contextRef="i_2017-09-30" decimals="-3" id="c23138983" unitRef="iso4217-usd">2234000</us-gaap:PrepaidExpenseCurrent>
  <us-gaap:PrepaidExpenseCurrent contextRef="i_2016-12-31" decimals="-3" id="c23138984" unitRef="iso4217-usd">2281000</us-gaap:PrepaidExpenseCurrent>
  <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139162" unitRef="iso4217-usd">6000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
  <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139163" unitRef="iso4217-usd">4000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
  <us-gaap:ProceedsFromStockOptionsExercised contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139257" unitRef="iso4217-usd">802000</us-gaap:ProceedsFromStockOptionsExercised>
  <us-gaap:ProceedsFromStockOptionsExercised contextRef="d_2016-01-01_2016-09-30" decimals="INF" id="c23139258" unitRef="iso4217-usd">529000</us-gaap:ProceedsFromStockOptionsExercised>
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="i_2017-09-30" decimals="-3" id="c23138989" unitRef="iso4217-usd">103797000</us-gaap:PropertyPlantAndEquipmentGross>
  <us-gaap:PropertyPlantAndEquipmentGross contextRef="i_2016-12-31" decimals="-3" id="c23138990" unitRef="iso4217-usd">96806000</us-gaap:PropertyPlantAndEquipmentGross>
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="i_2017-09-30" decimals="-3" id="c23138993" unitRef="iso4217-usd">51982000</us-gaap:PropertyPlantAndEquipmentNet>
  <us-gaap:PropertyPlantAndEquipmentNet contextRef="i_2016-12-31" decimals="-3" id="c23138994" unitRef="iso4217-usd">48516000</us-gaap:PropertyPlantAndEquipmentNet>
  <us-gaap:ReceivablesNetCurrent contextRef="i_2017-09-30" decimals="-3" id="c23138977" unitRef="iso4217-usd">22044000</us-gaap:ReceivablesNetCurrent>
  <us-gaap:ReceivablesNetCurrent contextRef="i_2016-12-31" decimals="-3" id="c23138978" unitRef="iso4217-usd">21249000</us-gaap:ReceivablesNetCurrent>
  <us-gaap:RelatedPartyTransactionsDisclosureTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691435">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 0"&gt;&lt;/td&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;12&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Related Party Transactions&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0; font-size: 10pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;Daniel Croteau, who has been a member of the Company&amp;#x2019;s board of directors since &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; December 16, 2015, &lt;/div&gt;was the Chief Executive Officer (through &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; March 2017) &lt;/div&gt;of Vention Medical, Inc. (&amp;#x201c;Vention&amp;#x201d;), a customer of the Company. Sales to Vention for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;-months ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; March 31, 2017 &lt;/div&gt;were approximately &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$148,000.&lt;/div&gt; As a result of the sale of Vention, Mr. Croteau&amp;#x2019;s employment ended in &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; March 2017 &lt;/div&gt;and sales to Vention are &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;no&lt;/div&gt; longer considered related party transactions.&lt;/div&gt;&lt;/div&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
  <us-gaap:RepaymentsOfLongTermDebt contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139167" unitRef="iso4217-usd">772000</us-gaap:RepaymentsOfLongTermDebt>
  <us-gaap:RepaymentsOfLongTermDebt contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139168" unitRef="iso4217-usd">758000</us-gaap:RepaymentsOfLongTermDebt>
  <us-gaap:RestructuringAndRelatedCostExpectedCost1 contextRef="i_2015-03-18_RestructuringCostAndReserveAxis-EmployeeSeverancePaymentsAndRelocationCostsMember_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="INF" id="c23139540" unitRef="iso4217-usd">180000</us-gaap:RestructuringAndRelatedCostExpectedCost1>
  <us-gaap:RestructuringAndRelatedCostExpectedCost1 contextRef="i_2015-03-18_RestructuringCostAndReserveAxis-MovingAndVacatingExpenseMember_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="INF" id="c23139541" unitRef="iso4217-usd">1600000</us-gaap:RestructuringAndRelatedCostExpectedCost1>
  <us-gaap:RestructuringAndRelatedCostExpectedCost1 contextRef="i_2015-03-18_RestructuringCostAndReserveAxis-LeaseTerminationMember_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="INF" id="c23139542" unitRef="iso4217-usd">360000</us-gaap:RestructuringAndRelatedCostExpectedCost1>
  <us-gaap:RestructuringCharges contextRef="d_2015-03-18_2015-03-18_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="INF" id="c23139538" unitRef="iso4217-usd">2100000</us-gaap:RestructuringCharges>
  <us-gaap:RestructuringCharges contextRef="d_2017-07-01_2017-09-30" id="c23139073" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:RestructuringCharges contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139074" unitRef="iso4217-usd">25000</us-gaap:RestructuringCharges>
  <us-gaap:RestructuringCharges contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139075" unitRef="iso4217-usd">63000</us-gaap:RestructuringCharges>
  <us-gaap:RestructuringCharges contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139076" unitRef="iso4217-usd">203000</us-gaap:RestructuringCharges>
  <us-gaap:RestructuringCharges contextRef="d_2017-07-01_2017-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" id="c23139555" unitRef="iso4217-usd" xs:nil="true"/>
  <us-gaap:RestructuringCharges contextRef="d_2016-07-01_2016-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="-3" id="c23139556" unitRef="iso4217-usd">25000</us-gaap:RestructuringCharges>
  <us-gaap:RestructuringCharges contextRef="d_2017-01-01_2017-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="-3" id="c23139557" unitRef="iso4217-usd">63000</us-gaap:RestructuringCharges>
  <us-gaap:RestructuringCharges contextRef="d_2016-01-01_2016-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember" decimals="-3" id="c23139558" unitRef="iso4217-usd">203000</us-gaap:RestructuringCharges>
  <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="i_2017-09-30" decimals="-3" id="c23139047" unitRef="iso4217-usd">94847000</us-gaap:RetainedEarningsAccumulatedDeficit>
  <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="i_2016-12-31" decimals="-3" id="c23139048" unitRef="iso4217-usd">88352000</us-gaap:RetainedEarningsAccumulatedDeficit>
  <us-gaap:RevenueFromRelatedParties contextRef="d_2017-01-01_2017-03-31_MajorCustomersAxis-VentionMedicalIncMember_RelatedPartyTransactionsByRelatedPartyAxis-NonemployeeMembersOfBoardOfDirectorsMember" decimals="INF" id="c23139561" unitRef="iso4217-usd">148000</us-gaap:RevenueFromRelatedParties>
  <us-gaap:SalesRevenueNet contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139057" unitRef="iso4217-usd">35684000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139058" unitRef="iso4217-usd">37220000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139059" unitRef="iso4217-usd">110623000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139060" unitRef="iso4217-usd">109626000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-07-01_2017-09-30_MajorCustomersAxis-MedicalMember" decimals="-3" id="c23139403" unitRef="iso4217-usd">16712000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-07-01_2016-09-30_MajorCustomersAxis-MedicalMember" decimals="-3" id="c23139405" unitRef="iso4217-usd">16548000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-01-01_2017-09-30_MajorCustomersAxis-MedicalMember" decimals="-3" id="c23139407" unitRef="iso4217-usd">52822000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-01-01_2016-09-30_MajorCustomersAxis-MedicalMember" decimals="-3" id="c23139409" unitRef="iso4217-usd">48953000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-07-01_2017-09-30_MajorCustomersAxis-ConsumerMember" decimals="-3" id="c23139411" unitRef="iso4217-usd">6006000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-07-01_2016-09-30_MajorCustomersAxis-ConsumerMember" decimals="-3" id="c23139413" unitRef="iso4217-usd">5648000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-01-01_2017-09-30_MajorCustomersAxis-ConsumerMember" decimals="-3" id="c23139415" unitRef="iso4217-usd">15713000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-01-01_2016-09-30_MajorCustomersAxis-ConsumerMember" decimals="-3" id="c23139417" unitRef="iso4217-usd">15303000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-07-01_2017-09-30_MajorCustomersAxis-AutomotiveMember" decimals="-3" id="c23139419" unitRef="iso4217-usd">5174000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-07-01_2016-09-30_MajorCustomersAxis-AutomotiveMember" decimals="-3" id="c23139421" unitRef="iso4217-usd">6942000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-01-01_2017-09-30_MajorCustomersAxis-AutomotiveMember" decimals="-3" id="c23139423" unitRef="iso4217-usd">18018000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-01-01_2016-09-30_MajorCustomersAxis-AutomotiveMember" decimals="-3" id="c23139425" unitRef="iso4217-usd">20485000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-07-01_2017-09-30_MajorCustomersAxis-AerospaceDefenseMember" decimals="-3" id="c23139427" unitRef="iso4217-usd">2682000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-07-01_2016-09-30_MajorCustomersAxis-AerospaceDefenseMember" decimals="-3" id="c23139429" unitRef="iso4217-usd">2516000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-01-01_2017-09-30_MajorCustomersAxis-AerospaceDefenseMember" decimals="-3" id="c23139431" unitRef="iso4217-usd">8290000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-01-01_2016-09-30_MajorCustomersAxis-AerospaceDefenseMember" decimals="-3" id="c23139433" unitRef="iso4217-usd">7929000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-07-01_2017-09-30_MajorCustomersAxis-IndustrialMember" decimals="-3" id="c23139435" unitRef="iso4217-usd">2591000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-07-01_2016-09-30_MajorCustomersAxis-IndustrialMember" decimals="-3" id="c23139437" unitRef="iso4217-usd">2792000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-01-01_2017-09-30_MajorCustomersAxis-IndustrialMember" decimals="-3" id="c23139439" unitRef="iso4217-usd">7629000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-01-01_2016-09-30_MajorCustomersAxis-IndustrialMember" decimals="-3" id="c23139441" unitRef="iso4217-usd">8441000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-07-01_2017-09-30_MajorCustomersAxis-ElectronicsMember" decimals="-3" id="c23139443" unitRef="iso4217-usd">2519000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-07-01_2016-09-30_MajorCustomersAxis-ElectronicsMember" decimals="-3" id="c23139445" unitRef="iso4217-usd">2774000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2017-01-01_2017-09-30_MajorCustomersAxis-ElectronicsMember" decimals="-3" id="c23139447" unitRef="iso4217-usd">8151000</us-gaap:SalesRevenueNet>
  <us-gaap:SalesRevenueNet contextRef="d_2016-01-01_2016-09-30_MajorCustomersAxis-ElectronicsMember" decimals="-3" id="c23139449" unitRef="iso4217-usd">8515000</us-gaap:SalesRevenueNet>
  <us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-16">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Nine Months Ended&lt;br /&gt; September 30&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-style: italic; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-style: italic; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; text-align: center"&gt;(in thousands)&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Cash paid for:&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="width: 70%; font-size: 10pt; padding-left: 10pt"&gt;Interest&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;37&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;51&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-left: 10pt"&gt;Income taxes, net of refunds&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3,167&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,178&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-left: 0pt"&gt;Non-cash investing and financing activities:&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-left: 10pt"&gt;Capital additions accrued but not yet paid&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;527&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;311&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock>
  <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-17">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; color: #8497B0; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Three Months Ended&lt;br /&gt; September 30,&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Nine Months Ended&lt;br /&gt; September 30,&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid"&gt;Share-based compensation related to:&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 40%; font-size: 10pt; text-align: left"&gt;Common stock granted to the Board of Directors&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;105&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;105&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Common stock granted to the Chief Executive Officer&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;300&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;300&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Stock options granted to directors&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;105&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;105&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Stock options granted to employees&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;4&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;34&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;25&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;107&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Restricted Stock Unit awards to employees&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;102&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;95&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;307&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;254&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt"&gt;Total share-based compensation&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;206&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;229&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;842&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;871&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
  <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-24">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Patents&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Non-&lt;br /&gt; Compete&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Customer&lt;br /&gt; List&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Total&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;Estimated useful life (in years)&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="width: 40%; font-size: 10pt"&gt;Gross amount at September 30, 2017&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;429&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;512&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,046&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,987&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;Accumulated amortization at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(429&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(496&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(1,983&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(2,908&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Net balance at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;63&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;79&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Estimated useful life (in years)&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5 &lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;Gross amount at December 31, 2016&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;429&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;512&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,046&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,987&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;Accumulated amortization at December 31, 2016&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(429&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(449&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(1,791&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(2,669&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Net balance at December 31, 2016&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;63&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;255&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;318&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
  <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-21">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;September 30,&lt;br /&gt; 2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;December 31,&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;2016&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 70%; font-size: 10pt; text-align: left"&gt;Raw materials&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6,660&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,111&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Work in process&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1,161&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1,354&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Finished goods&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5,315&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5,686&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt"&gt;Total inventory&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;13,136&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14,151&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
  <us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-25">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center"&gt;Three Months Ended&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center"&gt;Nine Months Ended&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;September 30,&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;September 30,&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid"&gt;Restructuring Costs&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 40%; font-size: 10pt; padding-bottom: 1pt"&gt;Relocation&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;25&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;63&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;203&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Total&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;-&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;25&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;63&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;203&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock>
  <us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-23">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Three Months Ended September 30,&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Nine Months Ended September 30,&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Market&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 20%; font-size: 10pt"&gt;Medical&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16,712&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;46.8&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16,548&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;44.5&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;52,822&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;47.7&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;48,953&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;44.7&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt"&gt;Consumer&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6,006&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16.8&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5,648&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;15.2&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;15,713&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14.2&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;15,303&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14.0&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;Automotive&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5,174&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14.5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6,942&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;18.7&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;18,018&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16.3&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;20,485&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;18.7&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Aerospace &amp;amp; Defense&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,682&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,516&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6.8&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;8,290&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,929&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.2&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;Industrial&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,591&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.3&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,792&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,629&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6.9&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;8,441&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.7&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;Electronics&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,519&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.1&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,774&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.5&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;8,151&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.4&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;8,515&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.8&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;35,684&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100.0&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;37,220&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100.0&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;110,623&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100.0&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;109,626&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100.0&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock>
  <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-20">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Restricted&lt;br /&gt; Stock Units&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;Weighted Average&lt;br /&gt; Award Date&lt;br /&gt; Fair Value&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 70%; font-size: 10pt"&gt;Unvested at December 31, 2016&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;46,558&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;20.05&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Awarded&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;22,770&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;24.70&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Shares vested&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(13,419&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;23.54&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Unvested at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;55,909&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;20.96&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
  <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-18">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Shares Under&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Options&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Weighted Average Exercise Price&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(per share)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Weighted Average Remaining&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Contractual Life&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(in years)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"&gt;&lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Aggregate Intrinsic Value&lt;/div&gt;&lt;/div&gt; &lt;div style=" margin-top: 0; margin-bottom: 0"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(in thousands)&lt;/div&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 40%; font-size: 10pt"&gt;Outstanding at December 31, 2016&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;232,578&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16.53&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-decoration: line-through"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-decoration: line-through; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Granted&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;12,336&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;27.05&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Exercised&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(51,285&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;26.88&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Expired&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right; border-bottom: Black 1pt solid"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;(3,750&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid"&gt;)&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;18.85&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td style="padding-bottom: 1pt; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Outstanding at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;189,879&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;17.41&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3.55&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,029&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Exercisable at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;184,879&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;17.23&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3.60&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,011&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt"&gt;Vested and expected to vest at September 30, 2017&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;189,879&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;17.41&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;3.55&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,029&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
  <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-19">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 74%; font-size: 10pt; text-align: left"&gt;Expected volatility&lt;/td&gt; &lt;td style="width: 2%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 2%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 21%; font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;29.1%&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Expected dividends&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;None&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Risk-free interest rate&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;1.84%&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Exercise price&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$27.05&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Expected term (in years)&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5.8 &lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Weighted-average grant date fair value&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$8.51&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
  <us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock contextRef="d_2017-01-01_2017-09-30" id="c-22">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; text-align: center; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;br /&gt; &amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;br /&gt; &amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Three Months Ended&lt;br /&gt; September 30,&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;br /&gt; &amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Nine Months Ended&lt;br /&gt; September 30,&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 40%; font-size: 10pt"&gt;Weighted average common shares outstanding, basic&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,264&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,195&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,240&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 12%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,183&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 1pt"&gt;Weighted average common equivalent shares due to stock options and RSUs&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;89&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;87&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;86&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;82&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;Weighted average common shares outstanding, diluted&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,353&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,282&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,326&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,265&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock>
  <us-gaap:SegmentReportingDisclosureTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691428">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;8&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Segment Reporting&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" font-size: 10pt; margin: 0pt 0 0pt 27pt; text-indent: 0in"&gt;The Company consists of a single operating and reportable segment.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;Revenues from customers outside of the United States are &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;not&lt;/div&gt; material. &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;No&lt;/div&gt; customer comprised more than &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;10%&lt;/div&gt; of the Company&amp;#x2019;s consolidated revenues for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017. &lt;/div&gt;All of the Company&amp;#x2019;s assets are located in the United States.&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;div style="display: inline; color: windowtext"&gt;The Company&amp;#x2019;s products are primarily sold to customers within the Medical, Consumer, Automotive, Aerospace and Defense, Industrial and Electronics markets. Net sales by market for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2017 &lt;/div&gt;and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2016,&lt;/div&gt; respectively, are as follows (in thousands)&lt;/div&gt;:&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div&gt; &lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Three Months Ended September 30,&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Nine Months Ended September 30,&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2017&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;2016&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Market&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom"&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td colspan="3" style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="width: 20%; font-size: 10pt"&gt;Medical&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16,712&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;46.8&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16,548&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;44.5&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;52,822&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;47.7&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;48,953&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="width: 7%; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;44.7&lt;/div&gt;&lt;/td&gt; &lt;td style="width: 1%; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt"&gt;Consumer&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6,006&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16.8&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5,648&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;15.2&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;15,713&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14.2&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;15,303&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14.0&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;Automotive&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;5,174&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;14.5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6,942&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;18.7&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;18,018&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;16.3&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;20,485&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;18.7&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;Aerospace &amp;amp; Defense&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,682&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,516&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6.8&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;8,290&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,929&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.2&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt"&gt;Industrial&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,591&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.3&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,792&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.5&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7,629&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6.9&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;8,441&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.7&lt;/div&gt;&lt;/td&gt; &lt;td style="font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: White"&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;Electronics&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,519&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.1&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2,774&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.5&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;8,151&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.4&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;8,515&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;7.8&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt; &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt; &lt;td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt"&gt;Net Sales&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;35,684&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100.0&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;37,220&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100.0&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;110,623&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100.0&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;$&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;109,626&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;&amp;nbsp;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;100.0&lt;/div&gt;&lt;/td&gt; &lt;td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left"&gt;%&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;Certain amounts for the &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;three&lt;/div&gt;- and &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;nine&lt;/div&gt;-month periods ended &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; September 30, 2016 &lt;/div&gt;were reclassified between markets to conform to the current period presentation.&lt;/div&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
  <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139069" unitRef="iso4217-usd">5693000</us-gaap:SellingGeneralAndAdministrativeExpense>
  <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139070" unitRef="iso4217-usd">6027000</us-gaap:SellingGeneralAndAdministrativeExpense>
  <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139071" unitRef="iso4217-usd">18070000</us-gaap:SellingGeneralAndAdministrativeExpense>
  <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139072" unitRef="iso4217-usd">18402000</us-gaap:SellingGeneralAndAdministrativeExpense>
  <us-gaap:ShareBasedCompensation contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139134" unitRef="iso4217-usd">842000</us-gaap:ShareBasedCompensation>
  <us-gaap:ShareBasedCompensation contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139135" unitRef="iso4217-usd">871000</us-gaap:ShareBasedCompensation>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139342" unitRef="xbrli-shares">22770</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139343" unitRef="iso4217-usd-per-xbrli-shares">24.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber contextRef="i_2016-12-31_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139340" unitRef="xbrli-shares">46558</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber contextRef="i_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139346" unitRef="xbrli-shares">55909</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="i_2016-12-31_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139341" unitRef="iso4217-usd-per-xbrli-shares">20.05</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="i_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139347" unitRef="iso4217-usd-per-xbrli-shares">20.96</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139344" unitRef="xbrli-shares">13419</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139345" unitRef="iso4217-usd-per-xbrli-shares">23.54</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice contextRef="i_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember" decimals="INF" id="c23139337" unitRef="iso4217-usd-per-xbrli-shares">27.05</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember" id="c23139335" unitRef="xbrli-pure" xs:nil="true"/>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember" decimals="4" id="c23139334" unitRef="xbrli-pure">0.291</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember" decimals="4" id="c23139336" unitRef="xbrli-pure">0.0184</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="i_2017-09-30" decimals="INF" id="c23139326" unitRef="xbrli-shares">184879</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice contextRef="i_2017-09-30" decimals="INF" id="c23139327" unitRef="iso4217-usd-per-xbrli-shares">17.23</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139255" unitRef="iso4217-usd">577000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="d_2016-01-01_2016-09-30" decimals="INF" id="c23139256" unitRef="iso4217-usd">564000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139318" unitRef="xbrli-shares">3750</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross contextRef="d_2017-06-06_2017-06-06" decimals="INF" id="c23139251" unitRef="xbrli-shares">12336</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139310" unitRef="xbrli-shares">12336</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139339" unitRef="iso4217-usd-per-xbrli-shares">8.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="i_2017-09-30" decimals="-3" id="c23139325" unitRef="iso4217-usd">2029000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="i_2016-12-31" decimals="INF" id="c23139306" unitRef="xbrli-shares">232578</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="i_2017-09-30" decimals="INF" id="c23139322" unitRef="xbrli-shares">189879</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="i_2016-12-31" decimals="INF" id="c23139307" unitRef="iso4217-usd-per-xbrli-shares">16.53</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="i_2017-09-30" decimals="INF" id="c23139323" unitRef="iso4217-usd-per-xbrli-shares">17.41</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice contextRef="i_2017-09-30" decimals="INF" id="c23139331" unitRef="iso4217-usd-per-xbrli-shares">17.41</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue contextRef="i_2017-09-30" decimals="-3" id="c23139333" unitRef="iso4217-usd">2029000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
  <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber contextRef="i_2017-09-30" decimals="INF" id="c23139330" unitRef="xbrli-shares">189879</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139315" unitRef="iso4217-usd-per-xbrli-shares">26.88</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139319" unitRef="iso4217-usd-per-xbrli-shares">18.85</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice>
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice contextRef="d_2017-06-06_2017-06-06" decimals="INF" id="c23139252" unitRef="iso4217-usd-per-xbrli-shares">27.05</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
  <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139311" unitRef="iso4217-usd-per-xbrli-shares">27.05</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember" id="c23139338">P5Y292D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1 contextRef="i_2017-09-30" decimals="-3" id="c23139329" unitRef="iso4217-usd">2011000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="d_2017-01-01_2017-09-30" id="c23139328">P3Y219D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="d_2017-01-01_2017-09-30" id="c23139324">P3Y200D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
  <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1 contextRef="d_2017-01-01_2017-09-30" id="c23139332">P3Y200D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
  <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation contextRef="d_2017-01-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139272" unitRef="xbrli-shares">4377</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
  <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation contextRef="d_2016-01-01_2016-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember" decimals="INF" id="c23139273" unitRef="xbrli-shares">3889</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
  <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised contextRef="d_2017-01-01_2017-09-30" decimals="INF" id="c23139314" unitRef="xbrli-shares">51285</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
  <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="d_2017-02-21_2017-02-21_AwardTypeAxis-CommonStockMember_PlanNameAxis-The2003IncentivePlanMember_RelatedPartyTransactionsByRelatedPartyAxis-ChairmanChiefExecutiveOfficerAndPresidentMember" decimals="INF" id="c23139267" unitRef="iso4217-usd">400000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
  <us-gaap:StockholdersEquity contextRef="i_2017-09-30" decimals="-3" id="c23139053" unitRef="iso4217-usd">120913000</us-gaap:StockholdersEquity>
  <us-gaap:StockholdersEquity contextRef="i_2016-12-31" decimals="-3" id="c23139054" unitRef="iso4217-usd">113053000</us-gaap:StockholdersEquity>
  <us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="d_2017-01-01_2017-09-30" id="s691425">&lt;div style="display: inline; font-family: times new roman; font-size: 10pt"&gt;&lt;table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;"&gt;  &lt;tr style="vertical-align: top"&gt; &lt;td style="width: 0"&gt;&lt;/td&gt; &lt;td style="width: 27pt"&gt;&lt;div style="display: inline; font-weight: bold;"&gt;(&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;6&lt;/div&gt;)&lt;/div&gt;&lt;/td&gt; &lt;td&gt;&lt;div style="display: inline; font-weight: bold;"&gt;Preferred Stock&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;/table&gt; &lt;div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt"&gt;&amp;nbsp;&lt;/div&gt; &lt;div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"&gt;On &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; March 18, 2009, &lt;/div&gt;the Company declared a dividend of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;one&lt;/div&gt; preferred share purchase right (a &amp;#x201c;Right&amp;#x201d;) for each outstanding share of common stock, par value &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$0.01&lt;/div&gt; per share, to the stockholders of record on &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; March&amp;nbsp;&lt;/div&gt;&lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;20,&lt;/div&gt; &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;2009.&lt;/div&gt; Each Right entitles the registered holder to purchase from the Company &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;one one&lt;/div&gt;-thousandth of a share of Series A Junior Participating Preferred Stock, par value &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$0.01&lt;/div&gt; per share (the &amp;#x201c;Preferred Share&amp;#x201d;) of the Company, at a price of &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;$25&lt;/div&gt; per &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt;one one&lt;/div&gt;-thousandth of a Preferred Share subject to adjustment and the terms of the Rights Agreement. The Rights expire on &lt;div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"&gt; March 19, 2019.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
  <us-gaap:TaxAdjustmentsSettlementsAndUnusualProvisions contextRef="d_2016-01-01_2016-03-31" decimals="INF" id="c23139529" unitRef="iso4217-usd">40000</us-gaap:TaxAdjustmentsSettlementsAndUnusualProvisions>
  <us-gaap:TreasuryStockShares contextRef="i_2017-09-30" decimals="INF" id="c23139051" unitRef="xbrli-shares">29559</us-gaap:TreasuryStockShares>
  <us-gaap:TreasuryStockShares contextRef="i_2016-12-31" decimals="INF" id="c23139052" unitRef="xbrli-shares">29559</us-gaap:TreasuryStockShares>
  <us-gaap:TreasuryStockValue contextRef="i_2017-09-30" decimals="-3" id="c23139049" unitRef="iso4217-usd">587000</us-gaap:TreasuryStockValue>
  <us-gaap:TreasuryStockValue contextRef="i_2016-12-31" decimals="-3" id="c23139050" unitRef="iso4217-usd">587000</us-gaap:TreasuryStockValue>
  <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139123" unitRef="xbrli-shares">7353000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
  <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139124" unitRef="xbrli-shares">7282000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
  <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139125" unitRef="xbrli-shares">7326000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
  <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139126" unitRef="xbrli-shares">7265000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
  <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="d_2017-07-01_2017-09-30" decimals="-3" id="c23139119" unitRef="xbrli-shares">7264000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
  <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="d_2016-07-01_2016-09-30" decimals="-3" id="c23139120" unitRef="xbrli-shares">7195000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
  <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="d_2017-01-01_2017-09-30" decimals="-3" id="c23139121" unitRef="xbrli-shares">7240000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
  <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="d_2016-01-01_2016-09-30" decimals="-3" id="c23139122" unitRef="xbrli-shares">7183000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
  <link:footnoteLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended"/>
  <xbrli:unit id="xbrli-shares">
    <xbrli:measure>xbrli:shares</xbrli:measure>
  </xbrli:unit>
  <xbrli:unit id="xbrli-pure">
    <xbrli:measure>xbrli:pure</xbrli:measure>
  </xbrli:unit>
  <xbrli:unit id="utr-sqft">
    <xbrli:measure>utr:sqft</xbrli:measure>
  </xbrli:unit>
  <xbrli:unit id="iso4217-usd">
    <xbrli:measure>iso4217:USD</xbrli:measure>
  </xbrli:unit>
  <xbrli:unit id="iso4217-usd-per-xbrli-shares">
    <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:context id="d_2009-03-18_2009-03-18">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2009-03-18</xbrli:startDate>
      <xbrli:endDate>2009-03-18</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2015-03-18_2015-03-18_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">ufpt:NewburyportMassachusettsFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2015-03-18</xbrli:startDate>
      <xbrli:endDate>2015-03-18</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-03-31">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</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="d_2016-01-01_2016-09-30">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-ChiefExecutiveOfficerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ufpt:CommonStockIssuedUnderTheEquityIncentivePlanMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:ChiefExecutiveOfficerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ufpt:CommonStockIssuedUnderTheEquityIncentivePlanMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:DirectorMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:DirectorMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">ufpt:EmployeesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">ufpt:EmployeesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AerospaceDefenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AerospaceDefenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AutomotiveMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AutomotiveMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ConsumerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ConsumerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ElectronicsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ElectronicsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-IndustrialMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:IndustrialMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-MedicalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:MedicalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_LitigationCaseAxis-PolyurethaneFoamAntitrustLawsuitMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LitigationCaseAxis">ufpt:PolyurethaneFoamAntitrustLawsuitMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_MajorCustomersAxis-AerospaceDefenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AerospaceDefenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_MajorCustomersAxis-AutomotiveMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AutomotiveMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_MajorCustomersAxis-ConsumerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ConsumerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_MajorCustomersAxis-ElectronicsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ElectronicsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_MajorCustomersAxis-IndustrialMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:IndustrialMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_MajorCustomersAxis-MedicalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:MedicalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">ufpt:NewburyportMassachusettsFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-09-30_StatementScenarioAxis-RestatementAdjustmentMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementScenarioAxis">us-gaap:RestatementAdjustmentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2016-01-01</xbrli:startDate>
      <xbrli:endDate>2016-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2016-01-01_2016-12-31">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</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="d_2016-01-01_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</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="d_2016-01-01_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</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="d_2016-01-01_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</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="d_2016-07-01_2016-09-30">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</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="d_2016-07-01_2016-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-ChiefExecutiveOfficerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ufpt:CommonStockIssuedUnderTheEquityIncentivePlanMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:ChiefExecutiveOfficerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ufpt:CommonStockIssuedUnderTheEquityIncentivePlanMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:DirectorMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:DirectorMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">ufpt:EmployeesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">ufpt:EmployeesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AerospaceDefenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AerospaceDefenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AutomotiveMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AutomotiveMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ConsumerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ConsumerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ElectronicsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ElectronicsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-IndustrialMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:IndustrialMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-MedicalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:MedicalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_LitigationCaseAxis-PolyurethaneFoamAntitrustLawsuitMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LitigationCaseAxis">ufpt:PolyurethaneFoamAntitrustLawsuitMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_MajorCustomersAxis-AerospaceDefenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AerospaceDefenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_MajorCustomersAxis-AutomotiveMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AutomotiveMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_MajorCustomersAxis-ConsumerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ConsumerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_MajorCustomersAxis-ElectronicsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ElectronicsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_MajorCustomersAxis-IndustrialMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:IndustrialMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_MajorCustomersAxis-MedicalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:MedicalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2016-07-01_2016-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">ufpt:NewburyportMassachusettsFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-01-01_2017-03-31_MajorCustomersAxis-VentionMedicalIncMember_RelatedPartyTransactionsByRelatedPartyAxis-NonemployeeMembersOfBoardOfDirectorsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:VentionMedicalIncMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ufpt:NonemployeeMembersOfBoardOfDirectorsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-01-01_2017-09-30">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201609Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201609Member</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-ChiefExecutiveOfficerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ufpt:CommonStockIssuedUnderTheEquityIncentivePlanMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:ChiefExecutiveOfficerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ufpt:CommonStockIssuedUnderTheEquityIncentivePlanMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:DirectorMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</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-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:DirectorMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">ufpt:EmployeesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">ufpt:EmployeesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AerospaceDefenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AerospaceDefenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AutomotiveMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AutomotiveMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ConsumerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ConsumerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ElectronicsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ElectronicsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-IndustrialMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:IndustrialMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-MedicalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:MedicalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_LitigationCaseAxis-PolyurethaneFoamAntitrustLawsuitMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LitigationCaseAxis">ufpt:PolyurethaneFoamAntitrustLawsuitMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_MajorCustomersAxis-AerospaceDefenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AerospaceDefenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_MajorCustomersAxis-AutomotiveMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AutomotiveMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_MajorCustomersAxis-ConsumerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ConsumerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_MajorCustomersAxis-ElectronicsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ElectronicsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_MajorCustomersAxis-IndustrialMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:IndustrialMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_MajorCustomersAxis-MedicalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:MedicalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-01-01_2017-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">ufpt:NewburyportMassachusettsFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-01-01</xbrli:startDate>
      <xbrli:endDate>2017-09-30</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-02-21_2017-02-21_AwardTypeAxis-CommonStockMember_PlanNameAxis-The2003IncentivePlanMember_RelatedPartyTransactionsByRelatedPartyAxis-ChairmanChiefExecutiveOfficerAndPresidentMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ufpt:The2003IncentivePlanMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">ufpt:ChairmanChiefExecutiveOfficerAndPresidentMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-02-21</xbrli:startDate>
      <xbrli:endDate>2017-02-21</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-06-06_2017-06-06">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:startDate>2017-06-06</xbrli:startDate>
      <xbrli:endDate>2017-06-06</xbrli:endDate>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="d_2017-07-01_2017-09-30">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</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="d_2017-07-01_2017-09-30_AdjustmentsForNewAccountingPronouncementsAxis-AccountingStandardsUpdate201609Member">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201609Member</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-ChiefExecutiveOfficerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ufpt:CommonStockIssuedUnderTheEquityIncentivePlanMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:ChiefExecutiveOfficerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_AwardTypeAxis-CommonStockIssuedUnderTheEquityIncentivePlanMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ufpt:CommonStockIssuedUnderTheEquityIncentivePlanMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:DirectorMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-DirectorMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">us-gaap:DirectorMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">ufpt:EmployeesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember_TitleOfIndividualAxis-EmployeesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:TitleOfIndividualAxis">ufpt:EmployeesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AerospaceDefenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AerospaceDefenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-AutomotiveMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AutomotiveMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ConsumerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ConsumerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-ElectronicsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ElectronicsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-IndustrialMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:IndustrialMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-MedicalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:MedicalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_LitigationCaseAxis-PolyurethaneFoamAntitrustLawsuitMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:LitigationCaseAxis">ufpt:PolyurethaneFoamAntitrustLawsuitMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_MajorCustomersAxis-AerospaceDefenseMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AerospaceDefenseMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_MajorCustomersAxis-AutomotiveMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:AutomotiveMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_MajorCustomersAxis-ConsumerMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ConsumerMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_MajorCustomersAxis-ElectronicsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:ElectronicsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_MajorCustomersAxis-IndustrialMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:IndustrialMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_MajorCustomersAxis-MedicalMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:MajorCustomersAxis">ufpt:MedicalMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="d_2017-07-01_2017-09-30_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">ufpt:NewburyportMassachusettsFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </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="i_2009-03-18">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2009-03-18</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2009-03-18_ClassOfWarrantOrRightAxis-PreferredSharePurchaseRightMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">ufpt:PreferredSharePurchaseRightMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2009-03-18</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2009-03-18_StatementClassOfStockAxis-SeriesAJuniorParticipatingPreferredStockMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">ufpt:SeriesAJuniorParticipatingPreferredStockMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2009-03-18</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2015-03-18_RestructuringCostAndReserveAxis-EmployeeSeverancePaymentsAndRelocationCostsMember_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">ufpt:EmployeeSeverancePaymentsAndRelocationCostsMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">ufpt:NewburyportMassachusettsFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-03-18</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2015-03-18_RestructuringCostAndReserveAxis-LeaseTerminationMember_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">ufpt:LeaseTerminationMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">ufpt:NewburyportMassachusettsFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-03-18</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2015-03-18_RestructuringCostAndReserveAxis-MovingAndVacatingExpenseMember_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">ufpt:MovingAndVacatingExpenseMember</xbrldi:explicitMember>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">ufpt:NewburyportMassachusettsFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-03-18</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2015-03-18_StatementGeographicalAxis-NewburyportMassachusettsFacilityMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:StatementGeographicalAxis">ufpt:NewburyportMassachusettsFacilityMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-03-18</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2015-12-31">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2015-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2016-09-30">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-09-30</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2016-12-31">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2016-12-31_AwardTypeAxis-RestrictedStockUnitsRSUMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</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="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2016-12-31</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</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="i_2016-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</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="i_2017-09-30">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-09-30</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2017-09-30_AwardTypeAxis-EmployeeStockOptionMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-09-30</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2017-09-30_AwardTypeAxis-RestrictedStockUnitsRSUMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-09-30</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-CustomerListsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-09-30</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-NoncompeteAgreementsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-09-30</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2017-09-30_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsMember">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
      <xbrli:segment>
        <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
      </xbrli:segment>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-09-30</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
  <xbrli:context id="i_2017-11-06">
    <xbrli:entity>
      <xbrli:identifier scheme="http://www.sec.gov/CIK">0000914156</xbrli:identifier>
    </xbrli:entity>
    <xbrli:period>
      <xbrli:instant>2017-11-06</xbrli:instant>
    </xbrli:period>
  </xbrli:context>
</xbrli:xbrl>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>ufpt-20170930.xsd
<DESCRIPTION>XBRL SCHEMA FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 02:08AM UTC 2017-11-08--><xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2017-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2014-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2016-01-31" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:naics="http://xbrl.sec.gov/naics/2011-01-31" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2011-01-31" xmlns:ufpt="http://www.ufpt.com/20170930" xmlns:us-gaap="http://fasb.org/us-gaap/2017-01-31" xmlns:us-types="http://fasb.org/us-types/2017-01-31" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.ufpt.com/20170930">
  <xsd:import namespace="http://xbrl.sec.gov/country/2017-01-31" schemaLocation="http://xbrl.sec.gov/country/2017/country-2017-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/naics/2011-01-31" schemaLocation="http://xbrl.sec.gov/naics/2011/naics-2011-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/sic/2011-01-31" schemaLocation="http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/stpr/2011-01-31" schemaLocation="http://xbrl.sec.gov/stpr/2011/stpr-2011-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/currency/2017-01-31" schemaLocation="http://xbrl.sec.gov/currency/2017/currency-2017-01-31.xsd"/>
  <xsd:import namespace="http://fasb.org/us-types/2017-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2017/elts/us-types-2017-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/invest/2013-01-31" schemaLocation="http://xbrl.sec.gov/invest/2013/invest-2013-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/dei/2014-01-31" schemaLocation="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xsd:import namespace="http://fasb.org/us-gaap/2017-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/exch/2016-01-31" schemaLocation="http://xbrl.sec.gov/exch/2016/exch-2016-01-31.xsd"/>
  <xsd:annotation>
    <xsd:appinfo>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ufpt-20170930_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ufpt-20170930_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ufpt-20170930_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ufpt-20170930_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="statement-document-and-entity-information" roleURI="http://www.ufpt.com/20170930/role/statement-document-and-entity-information">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">000 - Document - Document And Entity Information</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-balance-sheets-current-period-unaudited" roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">001 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">002 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-statements-of-income-unaudited" roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-income-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">003 - Statement - Condensed Consolidated Statements of Income (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-statements-of-cash-flows-unaudited" roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">004 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-1-basis-of-presentation-" roleURI="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">005 - Disclosure - Note 1 - Basis of Presentation</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-supplemental-cash-flow-information-" roleURI="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">006 - Disclosure - Note 2 - Supplemental Cash Flow Information</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-fair-value-of-financial-instruments-" roleURI="http://www.ufpt.com/20170930/role/statement-note-3-fair-value-of-financial-instruments-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">007 - Disclosure - Note 3 - Fair Value of Financial Instruments</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-sharebased-compensation" roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">008 - Disclosure - Note 4 - Share-based Compensation</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-inventories-" roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">009 - Disclosure - Note 5 - Inventories</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-preferred-stock-" roleURI="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">010 - Disclosure - Note 6 - Preferred Stock</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-income-per-share-" roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">011 - Disclosure - Note 7 - Income Per Share</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-segment-reporting" roleURI="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">012 - Document - Note 8 - Segment Reporting</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-other-intangible-assets-" roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">013 - Disclosure - Note 9 - Other Intangible Assets</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-income-taxes" roleURI="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">014 - Disclosure - Note 10 - Income Taxes</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-plant-consolidations" roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">015 - Disclosure - Note 11 - Plant Consolidations</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-related-party-transactions-" roleURI="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">016 - Disclosure - Note 12 - Related Party Transactions</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-material-overcharge-settlement" roleURI="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">017 - Disclosure - Note 13 - Material Overcharge Settlement</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-significant-accounting-policies-policies" roleURI="http://www.ufpt.com/20170930/role/statement-significant-accounting-policies-policies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">018 - Disclosure - Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-supplemental-cash-flow-information-tables" roleURI="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">019 - Disclosure - Note 2 - Supplemental Cash Flow Information (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-sharebased-compensation-tables" roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">020 - Disclosure - Note 4 - Share-based Compensation (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-inventories-tables" roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">021 - Disclosure - Note 5 - Inventories (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-income-per-share-tables" roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">022 - Disclosure - Note 7 - Income Per Share (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-segment-reporting-tables" roleURI="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">023 - Disclosure - Note 8 - Segment Reporting (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-other-intangible-assets-tables" roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">024 - Disclosure - Note 9 - Other Intangible Assets (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-plant-consolidations-tables" roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">025 - Disclosure - Note 11 - Plant Consolidations (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-1-basis-of-presentation-details-textual" roleURI="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">026 - Disclosure - Note 1 - Basis of Presentation (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">027 - Disclosure - Note 2 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-sharebased-compensation-details-textual" roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">028 - Disclosure - Note 4 - Share-based Compensation (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">029 - Disclosure - Note 4 - Share-based Compensation - Allocation of Share-based Compensation (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-sharebased-compensation-stock-option-activity-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-stock-option-activity-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">030 - Disclosure - Note 4 - Share-based Compensation - Stock Option Activity (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-sharebased-compensation-option-pricing-assumptions-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-option-pricing-assumptions-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">031 - Disclosure - Note 4 - Share-based Compensation - Option Pricing Assumptions (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">032 - Disclosure - Note 4 - Share-based Compensation - Restricted Stock Unit Activity (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-inventories-summary-of-inventory-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-summary-of-inventory-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">033 - Disclosure - Note 5 - Inventories - Summary of Inventory (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-preferred-stock-details-textual" roleURI="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">034 - Disclosure - Note 6 - Preferred Stock (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-income-per-share-details-textual" roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">035 - Disclosure - Note 7 - Income Per Share (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">036 - Disclosure - Note 7 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-segment-reporting-net-sales-by-market-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-net-sales-by-market-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">037 - Disclosure - Note 8 - Segment Reporting - Net Sales by Market (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-other-intangible-assets-details-textual" roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">038 - Disclosure - Note 9 - Other Intangible Assets (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">039 - Disclosure - Note 9 - Other Intangible Assets - Definite Lived Intangible Assets (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-income-taxes-details-textual" roleURI="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">040 - Disclosure - Note 10 - Income Taxes (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-plant-consolidations-details-textual" roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">041 - Disclosure - Note 11 - Plant Consolidations (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-plant-consolidations-restructuring-costs-details" roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-restructuring-costs-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">042 - Disclosure - Note 11 - Plant Consolidations - Restructuring Costs (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-related-party-transactions-details-textual" roleURI="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">043 - Disclosure - Note 12 - Related Party Transactions (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-material-overcharge-settlement-details-textual" roleURI="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">044 - Disclosure - Note 13 - Material Overcharge Settlement (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element abstract="true" id="ufpt_AerospaceDefenseMember" name="AerospaceDefenseMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_AutomotiveMember" name="AutomotiveMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" name="ChairmanChiefExecutiveOfficerAndPresidentMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" name="CommonStockIssuedUnderTheEquityIncentivePlanMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_ConsumerMember" name="ConsumerMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_DocumentAndEntityInformation" name="DocumentAndEntityInformation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_ElectronicsMember" name="ElectronicsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" name="EmployeeSeverancePaymentsAndRelocationCostsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_EmployeesMember" name="EmployeesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_IndustrialMember" name="IndustrialMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_LeaseTerminationMember" name="LeaseTerminationMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_MedicalMember" name="MedicalMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_MovingAndVacatingExpenseMember" name="MovingAndVacatingExpenseMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_NewburyportMassachusettsFacilityMember" name="NewburyportMassachusettsFacilityMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" name="NonemployeeMembersOfBoardOfDirectorsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_NoteToFinancialStatementDetailsTextual" name="NoteToFinancialStatementDetailsTextual" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_NotesToFinancialStatements" name="NotesToFinancialStatements" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_NotesToFinancialStatementsAbstract" name="NotesToFinancialStatementsAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element id="ufpt_PlantConsolidationDisclosureTextBlock" name="PlantConsolidationDisclosureTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_PolyurethaneFoamAntitrustLawsuitMember" name="PolyurethaneFoamAntitrustLawsuitMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_PreferredSharePurchaseRightMember" name="PreferredSharePurchaseRightMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding" name="PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="duration"/>
  <xsd:element id="ufpt_ProceedsFromStockOptionsExercisedNet" name="ProceedsFromStockOptionsExercisedNet" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="ufpt_RevisionsPolicyPolicyTextBlock" name="RevisionsPolicyPolicyTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_SeriesAJuniorParticipatingPreferredStockMember" name="SeriesAJuniorParticipatingPreferredStockMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation" name="SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:sharesItemType" xbrli:periodType="duration"/>
  <xsd:element id="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice" name="SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice" nillable="true" substitutionGroup="xbrli:item" type="num:perShareItemType" xbrli:periodType="duration"/>
  <xsd:element id="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice" name="SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice" nillable="true" substitutionGroup="xbrli:item" type="num:perShareItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_The2003IncentivePlanMember" name="The2003IncentivePlanMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_VentionMedicalIncMember" name="VentionMedicalIncMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-11-plant-consolidations-restructuring-costs-details" name="statement-statement-note-11-plant-consolidations-restructuring-costs-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-11-plant-consolidations-tables" name="statement-statement-note-11-plant-consolidations-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" name="statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-2-supplemental-cash-flow-information-tables" name="statement-statement-note-2-supplemental-cash-flow-information-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" name="statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details" name="statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" name="statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-4-sharebased-compensation-stock-option-activity-details" name="statement-statement-note-4-sharebased-compensation-stock-option-activity-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-4-sharebased-compensation-tables" name="statement-statement-note-4-sharebased-compensation-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-5-inventories-summary-of-inventory-details" name="statement-statement-note-5-inventories-summary-of-inventory-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-5-inventories-tables" name="statement-statement-note-5-inventories-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-7-income-per-share-tables" name="statement-statement-note-7-income-per-share-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" name="statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-8-segment-reporting-net-sales-by-market-details" name="statement-statement-note-8-segment-reporting-net-sales-by-market-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-8-segment-reporting-tables" name="statement-statement-note-8-segment-reporting-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" name="statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-note-9-other-intangible-assets-tables" name="statement-statement-note-9-other-intangible-assets-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ufpt_statement-statement-significant-accounting-policies-policies" name="statement-statement-significant-accounting-policies-policies" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>7
<FILENAME>ufpt-20170930_cal.xml
<DESCRIPTION>XBRL CALCULATION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 02:09AM UTC 2017-11-08--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-summary-of-inventory-details" xlink:href="ufpt-20170930.xsd#statement-note-5-inventories-summary-of-inventory-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-5-inventories-summary-of-inventory-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:href="ufpt-20170930.xsd#statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsSold" xlink:label="us-gaap_CostOfGoodsSold" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossRelatedToLitigationSettlement" xlink:label="us-gaap_GainLossRelatedToLitigationSettlement" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentIncomeInterest" xlink:label="us-gaap_InvestmentIncomeInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="us-gaap_SalesRevenueNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_SalesRevenueNet" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_CostOfGoodsSold" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_RestructuringCharges" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GainLossRelatedToLitigationSettlement" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_InvestmentIncomeInterest" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_InterestExpense" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:href="ufpt-20170930.xsd#statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-restructuring-costs-details" xlink:href="ufpt-20170930.xsd#statement-note-11-plant-consolidations-restructuring-costs-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-restructuring-costs-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessExitCosts1" xlink:label="us-gaap_BusinessExitCosts1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_RestructuringCharges" xlink:to="us-gaap_BusinessExitCosts1" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-balance-sheets-current-period-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:label="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:label="us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ReceivablesNetCurrent" xlink:label="us-gaap_ReceivablesNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_ReceivablesNetCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_IncomeTaxesReceivable" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OtherAssetsNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LongTermDebtCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableCurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_PreferredStockValue" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AdditionalPaidInCapital" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_TreasuryStockValue" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_CommitmentsAndContingencies" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquity" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ProceedsFromStockOptionsExercisedNet" xlink:label="ufpt_ProceedsFromStockOptionsExercisedNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets" xlink:label="us-gaap_GainLossOnDispositionOfAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInReceivables" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:type="arc"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="arc"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:type="arc"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="arc"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="arc"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:type="arc"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:calculationArc order="12" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_GainLossOnDispositionOfAssets" xlink:type="arc"/>
    <link:calculationArc order="13" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="ufpt_ProceedsFromStockOptionsExercisedNet" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_RepaymentsOfLongTermDebt" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>8
<FILENAME>ufpt-20170930_def.xml
<DESCRIPTION>XBRL DEFINITION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 02:09AM UTC 2017-11-08--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting" xlink:href="ufpt-20170930.xsd#statement-note-8-segment-reporting" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-" xlink:href="ufpt-20170930.xsd#statement-note-5-inventories-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-5-inventories-" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_InventoryDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-3-fair-value-of-financial-instruments-" xlink:href="ufpt-20170930.xsd#statement-note-3-fair-value-of-financial-instruments-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-3-fair-value-of-financial-instruments-" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_FairValueDisclosuresTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-" xlink:href="ufpt-20170930.xsd#statement-note-2-supplemental-cash-flow-information-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:label="us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-document-and-entity-information" xlink:href="ufpt-20170930.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityVoluntaryFilers" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityWellKnownSeasonedIssuer" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TreasuryStockShares" xlink:label="us-gaap_TreasuryStockShares" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesAuthorized" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesIssued" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesAuthorized" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesIssued" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockShares" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-" xlink:href="ufpt-20170930.xsd#statement-note-1-basis-of-presentation-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="us-gaap_RestatementAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScenarioUnspecifiedDomain" xlink:to="us-gaap_RestatementAdjustmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:label="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_The2003IncentivePlanMember" xlink:label="ufpt_The2003IncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="ufpt_The2003IncentivePlanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-" xlink:href="ufpt-20170930.xsd#statement-note-6-preferred-stock-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PreferredSharePurchaseRightMember" xlink:label="ufpt_PreferredSharePurchaseRightMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:label="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightAxis" xlink:label="us-gaap_ClassOfWarrantOrRightAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightDomain" xlink:label="us-gaap_ClassOfWarrantOrRightDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightDomain" xlink:label="us-gaap_ClassOfWarrantOrRightDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ClassOfWarrantOrRightAxis" xlink:to="us-gaap_ClassOfWarrantOrRightDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ClassOfWarrantOrRightAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ClassOfWarrantOrRightDomain" xlink:to="ufpt_PreferredSharePurchaseRightMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ClassOfWarrantOrRightAxis" xlink:to="us-gaap_ClassOfWarrantOrRightDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-" xlink:href="ufpt-20170930.xsd#statement-note-7-income-per-share-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-" xlink:href="ufpt-20170930.xsd#statement-note-9-other-intangible-assets-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes" xlink:href="ufpt-20170930.xsd#statement-note-10-income-taxes" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201609Member" xlink:label="us-gaap_AccountingStandardsUpdate201609Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate201609Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations" xlink:href="ufpt-20170930.xsd#statement-note-11-plant-consolidations" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:label="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_LeaseTerminationMember" xlink:label="ufpt_LeaseTerminationMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_MovingAndVacatingExpenseMember" xlink:label="ufpt_MovingAndVacatingExpenseMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NewburyportMassachusettsFacilityMember" xlink:label="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PlantConsolidationDisclosureTextBlock" xlink:label="ufpt_PlantConsolidationDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="us-gaap_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentGeographicalDomain" xlink:to="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RestructuringCostAndReserveAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfRestructuringDomain" xlink:to="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfRestructuringDomain" xlink:to="ufpt_MovingAndVacatingExpenseMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfRestructuringDomain" xlink:to="ufpt_LeaseTerminationMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="ufpt_PlantConsolidationDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-" xlink:href="ufpt-20170930.xsd#statement-note-12-related-party-transactions-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:label="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_VentionMedicalIncMember" xlink:label="ufpt_VentionMedicalIncMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorCustomersAxis" xlink:label="us-gaap_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_MajorCustomersAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NameOfMajorCustomerDomain" xlink:to="ufpt_VentionMedicalIncMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_NameOfMajorCustomerDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement" xlink:href="ufpt-20170930.xsd#statement-note-13-material-overcharge-settlement" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:label="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LegalMattersAndContingenciesTextBlock" xlink:label="us-gaap_LegalMattersAndContingenciesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseAxis" xlink:label="us-gaap_LitigationCaseAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseTypeDomain" xlink:label="us-gaap_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseTypeDomain" xlink:label="us-gaap_LitigationCaseTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LitigationCaseAxis" xlink:to="us-gaap_LitigationCaseTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LitigationCaseAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LitigationCaseTypeDomain" xlink:to="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LitigationCaseAxis" xlink:to="us-gaap_LitigationCaseTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_LegalMattersAndContingenciesTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-significant-accounting-policies-policies" xlink:href="ufpt-20170930.xsd#statement-significant-accounting-policies-policies" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-significant-accounting-policies-policies" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_RevisionsPolicyPolicyTextBlock" xlink:label="ufpt_RevisionsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PolicyTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PolicyTextBlockAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="ufpt_RevisionsPolicyPolicyTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-tables" xlink:href="ufpt-20170930.xsd#statement-note-2-supplemental-cash-flow-information-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-tables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:label="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-tables" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-tables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-tables" xlink:href="ufpt-20170930.xsd#statement-note-5-inventories-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-5-inventories-tables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-tables" xlink:href="ufpt-20170930.xsd#statement-note-7-income-per-share-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-tables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-tables" xlink:href="ufpt-20170930.xsd#statement-note-8-segment-reporting-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-tables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-tables" xlink:href="ufpt-20170930.xsd#statement-note-9-other-intangible-assets-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-tables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-tables" xlink:href="ufpt-20170930.xsd#statement-note-11-plant-consolidations-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-tables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-1-basis-of-presentation-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-details-textual" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="us-gaap_RestatementAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScenarioUnspecifiedDomain" xlink:to="us-gaap_RestatementAdjustmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:label="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation" xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice" xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice" xlink:label="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_The2003IncentivePlanMember" xlink:label="ufpt_The2003IncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="ufpt_The2003IncentivePlanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-6-preferred-stock-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PreferredSharePurchaseRightMember" xlink:label="ufpt_PreferredSharePurchaseRightMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding" xlink:label="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:label="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightAxis" xlink:label="us-gaap_ClassOfWarrantOrRightAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightDomain" xlink:label="us-gaap_ClassOfWarrantOrRightDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightDomain" xlink:label="us-gaap_ClassOfWarrantOrRightDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:label="us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight" xlink:label="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ClassOfWarrantOrRightAxis" xlink:to="us-gaap_ClassOfWarrantOrRightDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ClassOfWarrantOrRightAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ClassOfWarrantOrRightDomain" xlink:to="ufpt_PreferredSharePurchaseRightMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ClassOfWarrantOrRightAxis" xlink:to="us-gaap_ClassOfWarrantOrRightDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-7-income-per-share-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-details-textual" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-9-other-intangible-assets-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-details-textual" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-10-income-taxes-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes-details-textual" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201609Member" xlink:label="us-gaap_AccountingStandardsUpdate201609Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions" xlink:label="us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_AccountingStandardsUpdate201609Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-11-plant-consolidations-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:label="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_LeaseTerminationMember" xlink:label="ufpt_LeaseTerminationMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_MovingAndVacatingExpenseMember" xlink:label="ufpt_MovingAndVacatingExpenseMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NewburyportMassachusettsFacilityMember" xlink:label="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsForRestructuring" xlink:label="us-gaap_PaymentsForRestructuring" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringAndRelatedCostExpectedCost1" xlink:label="us-gaap_RestructuringAndRelatedCostExpectedCost1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="us-gaap_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentGeographicalDomain" xlink:to="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RestructuringCostAndReserveAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfRestructuringDomain" xlink:to="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfRestructuringDomain" xlink:to="ufpt_MovingAndVacatingExpenseMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TypeOfRestructuringDomain" xlink:to="ufpt_LeaseTerminationMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AreaOfRealEstateProperty" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RestructuringCharges" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RestructuringAndRelatedCostExpectedCost1" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsForRestructuring" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-12-related-party-transactions-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:label="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_VentionMedicalIncMember" xlink:label="ufpt_VentionMedicalIncMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorCustomersAxis" xlink:label="us-gaap_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromRelatedParties" xlink:label="us-gaap_RevenueFromRelatedParties" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_MajorCustomersAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NameOfMajorCustomerDomain" xlink:to="ufpt_VentionMedicalIncMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_NameOfMajorCustomerDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromRelatedParties" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-13-material-overcharge-settlement-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:label="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseAxis" xlink:label="us-gaap_LitigationCaseAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseTypeDomain" xlink:label="us-gaap_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseTypeDomain" xlink:label="us-gaap_LitigationCaseTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationSettlementAmountAwardedFromOtherParty" xlink:label="us-gaap_LitigationSettlementAmountAwardedFromOtherParty" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LitigationCaseAxis" xlink:to="us-gaap_LitigationCaseTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LitigationCaseAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LitigationCaseTypeDomain" xlink:to="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LitigationCaseAxis" xlink:to="us-gaap_LitigationCaseTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LitigationSettlementAmountAwardedFromOtherParty" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:type="arc"/>
    <link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-summary-of-inventory-details" xlink:href="ufpt-20170930.xsd#statement-note-5-inventories-summary-of-inventory-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-5-inventories-summary-of-inventory-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:href="ufpt-20170930.xsd#statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CustomerListsMember" xlink:label="us-gaap_CustomerListsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_PatentsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_NoncompeteAgreementsMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerListsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsSold" xlink:label="us-gaap_CostOfGoodsSold" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossRelatedToLitigationSettlement" xlink:label="us-gaap_GainLossRelatedToLitigationSettlement" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentIncomeInterest" xlink:label="us-gaap_InvestmentIncomeInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="us-gaap_SalesRevenueNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SalesRevenueNet" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CostOfGoodsSold" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RestructuringCharges" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GainLossRelatedToLitigationSettlement" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InvestmentIncomeInterest" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InterestExpense" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" xlink:label="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_EmployeesMember" xlink:label="ufpt_EmployeesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ChiefExecutiveOfficerMember" xlink:label="us-gaap_ChiefExecutiveOfficerMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DirectorMember" xlink:label="us-gaap_DirectorMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TitleOfIndividualAxis" xlink:label="us-gaap_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_TitleOfIndividualAxis" xlink:to="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_IncomeStatementLocationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="us-gaap_DirectorMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_TitleOfIndividualAxis" xlink:to="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="us-gaap_ChiefExecutiveOfficerMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="ufpt_EmployeesMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:href="ufpt-20170930.xsd#statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-restructuring-costs-details" xlink:href="ufpt-20170930.xsd#statement-note-11-plant-consolidations-restructuring-costs-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-restructuring-costs-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NewburyportMassachusettsFacilityMember" xlink:label="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessExitCosts1" xlink:label="us-gaap_BusinessExitCosts1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="us-gaap_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentGeographicalDomain" xlink:to="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessExitCosts1" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RestructuringCharges" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:href="ufpt-20170930.xsd#statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:label="us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_InterestPaidNet" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaidNet" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-balance-sheets-current-period-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:label="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:label="us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ReceivablesNetCurrent" xlink:label="us-gaap_ReceivablesNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReceivablesNetCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxesReceivable" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherAssetsNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Assets" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermDebtCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_Liabilities" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_PreferredStockValue" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapital" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_TreasuryStockValue" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ProceedsFromStockOptionsExercisedNet" xlink:label="ufpt_ProceedsFromStockOptionsExercisedNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets" xlink:label="us-gaap_GainLossOnDispositionOfAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnDispositionOfAssets" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInReceivables" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfLongTermDebt" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="ufpt_ProceedsFromStockOptionsExercisedNet" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-net-sales-by-market-details" xlink:href="ufpt-20170930.xsd#statement-note-8-segment-reporting-net-sales-by-market-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-net-sales-by-market-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_AerospaceDefenseMember" xlink:label="ufpt_AerospaceDefenseMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_AutomotiveMember" xlink:label="ufpt_AutomotiveMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ConsumerMember" xlink:label="ufpt_ConsumerMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ElectronicsMember" xlink:label="ufpt_ElectronicsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_IndustrialMember" xlink:label="ufpt_IndustrialMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_MedicalMember" xlink:label="ufpt_MedicalMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorCustomersAxis" xlink:label="us-gaap_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="us-gaap_SalesRevenueNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_MajorCustomersAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NameOfMajorCustomerDomain" xlink:to="ufpt_MedicalMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_NameOfMajorCustomerDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NameOfMajorCustomerDomain" xlink:to="ufpt_ConsumerMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NameOfMajorCustomerDomain" xlink:to="ufpt_AutomotiveMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NameOfMajorCustomerDomain" xlink:to="ufpt_AerospaceDefenseMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NameOfMajorCustomerDomain" xlink:to="ufpt_IndustrialMember" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NameOfMajorCustomerDomain" xlink:to="ufpt_ElectronicsMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SalesRevenueNet" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" xlink:type="arc"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>9
<FILENAME>ufpt-20170930_lab.xml
<DESCRIPTION>XBRL LABEL FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 02:08AM UTC 2017-11-08--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" xlink:type="simple"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_DocumentAndEntityInformation" xlink:label="ufpt_DocumentAndEntityInformation" xlink:type="locator"/>
    <link:label xlink:label="ufpt_DocumentAndEntityInformation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document And Entity Information</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_DocumentAndEntityInformation" xlink:to="ufpt_DocumentAndEntityInformation-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:label xlink:label="ufpt_NoteToFinancialStatementDetailsTextual-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note To Financial Statement Details Textual</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="ufpt_NoteToFinancialStatementDetailsTextual-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-significant-accounting-policies-policies" xlink:label="ufpt_statement-statement-significant-accounting-policies-policies" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-significant-accounting-policies-policies-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementsignificantaccountingpoliciespolicies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-significant-accounting-policies-policies" xlink:to="ufpt_statement-statement-significant-accounting-policies-policies-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-2-supplemental-cash-flow-information-tables" xlink:label="ufpt_statement-statement-note-2-supplemental-cash-flow-information-tables" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-2-supplemental-cash-flow-information-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote2supplementalcashflowinformationtables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-2-supplemental-cash-flow-information-tables" xlink:to="ufpt_statement-statement-note-2-supplemental-cash-flow-information-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-tables" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-tables" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote4sharebasedcompensationtables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-tables" xlink:to="ufpt_statement-statement-note-4-sharebased-compensation-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Excess tax benefit on share-based compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-5-inventories-tables" xlink:label="ufpt_statement-statement-note-5-inventories-tables" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-5-inventories-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote5inventoriestables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-5-inventories-tables" xlink:to="ufpt_statement-statement-note-5-inventories-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TypeOfAdoptionMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Type of Adoption [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TypeOfAdoptionMember" xlink:to="us-gaap_TypeOfAdoptionMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-7-income-per-share-tables" xlink:label="ufpt_statement-statement-note-7-income-per-share-tables" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-7-income-per-share-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote7incomepersharetables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-7-income-per-share-tables" xlink:to="ufpt_statement-statement-note-7-income-per-share-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments for New Accounting Pronouncements [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-8-segment-reporting-tables" xlink:label="ufpt_statement-statement-note-8-segment-reporting-tables" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-8-segment-reporting-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote8segmentreportingtables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-8-segment-reporting-tables" xlink:to="ufpt_statement-statement-note-8-segment-reporting-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Payment of statutory withholdings for stock options exercised and restricted stock units vested</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-9-other-intangible-assets-tables" xlink:label="ufpt_statement-statement-note-9-other-intangible-assets-tables" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-9-other-intangible-assets-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote9otherintangibleassetstables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-9-other-intangible-assets-tables" xlink:to="ufpt_statement-statement-note-9-other-intangible-assets-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-11-plant-consolidations-tables" xlink:label="ufpt_statement-statement-note-11-plant-consolidations-tables" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-11-plant-consolidations-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote11plantconsolidationstables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-11-plant-consolidations-tables" xlink:to="ufpt_statement-statement-note-11-plant-consolidations-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:label="ufpt_statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote2supplementalcashflowinformationscheduleofsupplementalcashflowinformationdetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:to="ufpt_statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote4sharebasedcompensationallocationofsharebasedcompensationdetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:to="ufpt_statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-stock-option-activity-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote4sharebasedcompensationstockoptionactivitydetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:to="ufpt_statement-statement-note-4-sharebased-compensation-stock-option-activity-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote4sharebasedcompensationoptionpricingassumptionsdetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:to="ufpt_statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote4sharebasedcompensationrestrictedstockunitactivitydetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:to="ufpt_statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-5-inventories-summary-of-inventory-details" xlink:label="ufpt_statement-statement-note-5-inventories-summary-of-inventory-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-5-inventories-summary-of-inventory-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote5inventoriessummaryofinventorydetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-5-inventories-summary-of-inventory-details" xlink:to="ufpt_statement-statement-note-5-inventories-summary-of-inventory-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:label="ufpt_statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote7incomepershareweightedaveragenumberofsharesusedtocomputenetepsdetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:to="ufpt_statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-8-segment-reporting-net-sales-by-market-details" xlink:label="ufpt_statement-statement-note-8-segment-reporting-net-sales-by-market-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-8-segment-reporting-net-sales-by-market-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote8segmentreportingnetsalesbymarketdetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-8-segment-reporting-net-sales-by-market-details" xlink:to="ufpt_statement-statement-note-8-segment-reporting-net-sales-by-market-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:label="ufpt_statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote9otherintangibleassetsdefinitelivedintangibleassetsdetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:to="ufpt_statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-11-plant-consolidations-restructuring-costs-details" xlink:label="ufpt_statement-statement-note-11-plant-consolidations-restructuring-costs-details" xlink:type="locator"/>
    <link:label xlink:label="ufpt_statement-statement-note-11-plant-consolidations-restructuring-costs-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">statementnote11plantconsolidationsrestructuringcostsdetails</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_statement-statement-note-11-plant-consolidations-restructuring-costs-details" xlink:to="ufpt_statement-statement-note-11-plant-consolidations-restructuring-costs-details-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatements" xlink:label="ufpt_NotesToFinancialStatements" xlink:type="locator"/>
    <link:label xlink:label="ufpt_NotesToFinancialStatements-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Notes To Financial Statements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_NotesToFinancialStatements" xlink:to="ufpt_NotesToFinancialStatements-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:label xlink:label="ufpt_NotesToFinancialStatementsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Notes To Financial Statements [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="ufpt_NotesToFinancialStatementsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProceedsFromStockOptionsExercised</link:label>
    <link:label xlink:label="us-gaap_ProceedsFromStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from Stock Options Exercised</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromStockOptionsExercised" xlink:to="us-gaap_ProceedsFromStockOptionsExercised-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash flows from investing activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityComponentDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-qualified deferred compensation plan and other liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementEquityComponentsAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInAccruedLiabilities</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accrued Liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred stock, shares outstanding (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, shares outstanding (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Diluted (in shares)</link:label>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Weighted average common shares outstanding, diluted (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</link:label>
    <link:label xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInAccountsPayable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LegalMattersAndContingenciesTextBlock" xlink:label="us-gaap_LegalMattersAndContingenciesTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LegalMattersAndContingenciesTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Matters and Contingencies [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LegalMattersAndContingenciesTextBlock" xlink:to="us-gaap_LegalMattersAndContingenciesTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DirectorMember" xlink:label="us-gaap_DirectorMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DirectorMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Director [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DirectorMember" xlink:to="us-gaap_DirectorMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related Party [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromRelatedParties" xlink:label="us-gaap_RevenueFromRelatedParties" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueFromRelatedParties-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RevenueFromRelatedParties</link:label>
    <link:label xlink:label="us-gaap_RevenueFromRelatedParties-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from Related Parties</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromRelatedParties" xlink:to="us-gaap_RevenueFromRelatedParties-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareDiluted-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Diluted (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RelatedPartyDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related Party [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="us-gaap_RelatedPartyDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="us-gaap_SalesRevenueNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SalesRevenueNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net sales</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNet" xlink:to="us-gaap_SalesRevenueNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at beginning of period</link:label>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RepaymentsOfLongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RepaymentsOfLongTermDebt</link:label>
    <link:label xlink:label="us-gaap_RepaymentsOfLongTermDebt-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Principal repayments of long-term debt</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLongTermDebt" xlink:to="us-gaap_RepaymentsOfLongTermDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="us-gaap_RestatementAdjustmentMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestatementAdjustmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement Adjustment [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestatementAdjustmentMember" xlink:to="us-gaap_RestatementAdjustmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Weighted average common shares outstanding, basic (in shares)</link:label>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Basic (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AreaOfRealEstateProperty-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AreaOfRealEstateProperty</link:label>
    <link:label xlink:label="us-gaap_AreaOfRealEstateProperty-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Area of Real Estate Property</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AreaOfRealEstateProperty" xlink:to="us-gaap_AreaOfRealEstateProperty-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareBasic-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Basic (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScenarioUnspecifiedDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Scenario, Unspecified [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScenarioUnspecifiedDomain" xlink:to="us-gaap_ScenarioUnspecifiedDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringAndRelatedCostExpectedCost1" xlink:label="us-gaap_RestructuringAndRelatedCostExpectedCost1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestructuringAndRelatedCostExpectedCost1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RestructuringAndRelatedCostExpectedCost1</link:label>
    <link:label xlink:label="us-gaap_RestructuringAndRelatedCostExpectedCost1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restructuring and Related Cost, Expected Cost</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringAndRelatedCostExpectedCost1" xlink:to="us-gaap_RestructuringAndRelatedCostExpectedCost1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling, General and Administrative Expenses [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementScenarioAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_StatementScenarioAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" xlink:label="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock Issued Under the Equity Incentive Plan [Member]</link:label>
    <link:label xlink:label="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Stock that is subordinate to all other stock issued under the equity incentive plan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" xlink:to="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskPercentage1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Percentage of concentration risk</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestructuringCostAndReserveAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restructuring Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_RestructuringCostAndReserveAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeStatementLocationDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_IncomeStatementLocationDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeStatementLocationAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TypeOfRestructuringDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Type of Restructuring [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TypeOfRestructuringDomain" xlink:to="us-gaap_TypeOfRestructuringDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CustomerConcentrationRiskMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerConcentrationRiskMember" xlink:to="us-gaap_CustomerConcentrationRiskMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restructuring and Related Costs [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:to="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TreasuryStockValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TreasuryStockValue</link:label>
    <link:label xlink:label="us-gaap_TreasuryStockValue-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Treasury stock at cost, 29,559 shares at September 30, 2017 and December 31, 2016</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorCustomersAxis" xlink:label="us-gaap_MajorCustomersAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MajorCustomersAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_MajorCustomersAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInOtherOperatingAssets</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NameOfMajorCustomerDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NameOfMajorCustomerDomain" xlink:to="us-gaap_NameOfMajorCustomerDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountingPoliciesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationSettlementAmountAwardedFromOtherParty" xlink:label="us-gaap_LitigationSettlementAmountAwardedFromOtherParty" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LitigationSettlementAmountAwardedFromOtherParty-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LitigationSettlementAmountAwardedFromOtherParty</link:label>
    <link:label xlink:label="us-gaap_LitigationSettlementAmountAwardedFromOtherParty-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Litigation Settlement, Amount Awarded from Other Party</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LitigationSettlementAmountAwardedFromOtherParty" xlink:to="us-gaap_LitigationSettlementAmountAwardedFromOtherParty-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfFinancialPositionAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Relationship to Entity [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskByTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TitleOfIndividualAxis" xlink:label="us-gaap_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TitleOfIndividualAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of Individual [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TitleOfIndividualAxis" xlink:to="us-gaap_TitleOfIndividualAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares Paid for Tax Withholding for Share Based Compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders' Equity Note Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInPrepaidExpense</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SalesRevenueNetMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sales Revenue, Net [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfCashFlowsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Share-based compensation</link:label>
    <link:label xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AllocatedShareBasedCompensationExpense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInReceivables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInReceivables</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInReceivables-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Receivables, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInReceivables" xlink:to="us-gaap_IncreaseDecreaseInReceivables-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</link:label>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Exercised (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInIncomeTaxesReceivable</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Income Taxes Receivable</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Refundable income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:label="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:to="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SegmentGeographicalDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentGeographicalDomain" xlink:to="us-gaap_SegmentGeographicalDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:label="us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashFlowSupplementalDisclosuresTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Flow, Supplemental Disclosures [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:to="us-gaap_CashFlowSupplementalDisclosuresTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="us-gaap_StatementGeographicalAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementGeographicalAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_StatementGeographicalAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherLiabilitiesNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:to="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:label="us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:to="us-gaap_DeferredTaxLiabilitiesNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LiabilitiesAndStockholdersEquity</link:label>
    <link:label xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities and stockholders' equity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income tax expense</link:label>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained earnings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PolicyTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PolicyTextBlockAbstract</link:label>
    <link:label xlink:label="us-gaap_PolicyTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PolicyTextBlockAbstract" xlink:to="us-gaap_PolicyTextBlockAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInInventories-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInInventories</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInInventories-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ProceedsFromStockOptionsExercisedNet" xlink:label="ufpt_ProceedsFromStockOptionsExercisedNet" xlink:type="locator"/>
    <link:label xlink:label="ufpt_ProceedsFromStockOptionsExercisedNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from exercise of stock options, net of attestation</link:label>
    <link:label xlink:label="ufpt_ProceedsFromStockOptionsExercisedNet-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The cash inflow associated with the amount received from holders exercising their stock options, net of attestation.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_ProceedsFromStockOptionsExercisedNet" xlink:to="ufpt_ProceedsFromStockOptionsExercisedNet-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_The2003IncentivePlanMember" xlink:label="ufpt_The2003IncentivePlanMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_The2003IncentivePlanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">The 2003 Incentive Plan [Member]</link:label>
    <link:label xlink:label="ufpt_The2003IncentivePlanMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the reporting entity's "2003 Incentive Plan."</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_The2003IncentivePlanMember" xlink:to="ufpt_The2003IncentivePlanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementTable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation" xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation</link:label>
    <link:label xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares Paid for Exercise Price and Tax Withholding for Share Based Compensation</link:label>
    <link:label xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the number of shares the employees use to repay the employer for the exercise price and income tax withholding obligations.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation" xlink:to="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice" xlink:label="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice" xlink:type="locator"/>
    <link:label xlink:label="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice</link:label>
    <link:label xlink:label="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares Paid for Tax Withholding for Share Based Compensation Market Price</link:label>
    <link:label xlink:label="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">For net-share settlement of share-based awards when the employer settles employees' income tax withholding obligations, this element represents the market price per share of shares used by the employees to repay the employer.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice" xlink:to="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NoncompeteAgreementsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Noncompete Agreements [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncompeteAgreementsMember" xlink:to="us-gaap_NoncompeteAgreementsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PlantConsolidationDisclosureTextBlock" xlink:label="ufpt_PlantConsolidationDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="ufpt_PlantConsolidationDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plant Consolidation Disclosure [Text Block]</link:label>
    <link:label xlink:label="ufpt_PlantConsolidationDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The entire disclosure for plant consolidation consisting of restructuring and consolidation of plant facilities of the entity.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_PlantConsolidationDisclosureTextBlock" xlink:to="ufpt_PlantConsolidationDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding" xlink:label="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding" xlink:type="locator"/>
    <link:label xlink:label="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding</link:label>
    <link:label xlink:label="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred Stock Dividends Number of Preferred Share Purchase Rights Distributed for each Share of Common Stock Outstanding</link:label>
    <link:label xlink:label="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the number of preferred share purchase rights declared as dividend for each outstanding share of common stock on March, 2009.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding" xlink:to="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeStatementAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:label="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-qualified deferred compensation plan</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:to="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash flows from financing activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_MedicalMember" xlink:label="ufpt_MedicalMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_MedicalMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Medical [Member]</link:label>
    <link:label xlink:label="ufpt_MedicalMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information pertaining to the Medical group of major customers.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_MedicalMember" xlink:to="ufpt_MedicalMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:label="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_SeriesAJuniorParticipatingPreferredStockMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Series A Junior Participating Preferred Stock [Member]</link:label>
    <link:label xlink:label="ufpt_SeriesAJuniorParticipatingPreferredStockMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the "Series A Junior Participating Preferred Stock," which is a classification of auction market preferred securities.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:to="ufpt_SeriesAJuniorParticipatingPreferredStockMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ConsumerMember" xlink:label="ufpt_ConsumerMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_ConsumerMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consumer [Member]</link:label>
    <link:label xlink:label="ufpt_ConsumerMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information pertaining to the Consumer group of major customers.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_ConsumerMember" xlink:to="ufpt_ConsumerMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_AutomotiveMember" xlink:label="ufpt_AutomotiveMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_AutomotiveMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Automotive [Member]</link:label>
    <link:label xlink:label="ufpt_AutomotiveMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information pertaining to the Automotive group of major customers.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_AutomotiveMember" xlink:to="ufpt_AutomotiveMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_IndustrialMember" xlink:label="ufpt_IndustrialMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_IndustrialMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Industrial [Member]</link:label>
    <link:label xlink:label="ufpt_IndustrialMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information pertaining to the Industrial group of major customers.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_IndustrialMember" xlink:to="ufpt_IndustrialMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ElectronicsMember" xlink:label="ufpt_ElectronicsMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_ElectronicsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Electronics [Member]</link:label>
    <link:label xlink:label="ufpt_ElectronicsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information pertaining to the Electronics group of major customers.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_ElectronicsMember" xlink:to="ufpt_ElectronicsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ClassOfStockDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_ClassOfStockDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PatentsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Patents [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PatentsMember" xlink:to="us-gaap_PatentsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementClassOfStockAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_StatementClassOfStockAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_AerospaceDefenseMember" xlink:label="ufpt_AerospaceDefenseMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_AerospaceDefenseMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Aerospace &amp; Defense [Member]</link:label>
    <link:label xlink:label="ufpt_AerospaceDefenseMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information pertaining to the Aerospace &amp; Defense group of major customers.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_AerospaceDefenseMember" xlink:to="ufpt_AerospaceDefenseMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AwardTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Weighted Average Number of Shares [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:to="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Award [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:label="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Severance Payments and Relocation Costs [Member]</link:label>
    <link:label xlink:label="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents restructuring costs related to employee severance payments and relocation costs.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:to="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NewburyportMassachusettsFacilityMember" xlink:label="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_NewburyportMassachusettsFacilityMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Newburyport, Massachusetts Facility [Member]</link:label>
    <link:label xlink:label="ufpt_NewburyportMassachusettsFacilityMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the facility located in Newburyport, Massachusetts.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_NewburyportMassachusettsFacilityMember" xlink:to="ufpt_NewburyportMassachusettsFacilityMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_LeaseTerminationMember" xlink:label="ufpt_LeaseTerminationMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_LeaseTerminationMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease Termination [Member]</link:label>
    <link:label xlink:label="ufpt_LeaseTerminationMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents restructuring costs related to the lease termination.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_LeaseTerminationMember" xlink:to="ufpt_LeaseTerminationMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_MovingAndVacatingExpenseMember" xlink:label="ufpt_MovingAndVacatingExpenseMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_MovingAndVacatingExpenseMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Moving and Vacating Expense [Member]</link:label>
    <link:label xlink:label="ufpt_MovingAndVacatingExpenseMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the restructuring costs related to moving and vacating expenses.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_MovingAndVacatingExpenseMember" xlink:to="ufpt_MovingAndVacatingExpenseMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CustomerListsMember" xlink:label="us-gaap_CustomerListsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CustomerListsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Lists [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerListsMember" xlink:to="us-gaap_CustomerListsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SegmentReportingDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_VentionMedicalIncMember" xlink:label="ufpt_VentionMedicalIncMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_VentionMedicalIncMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Vention Medical, Inc. [Member]</link:label>
    <link:label xlink:label="ufpt_VentionMedicalIncMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the information pertaining to the transaction with Vention Medical Inc.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_VentionMedicalIncMember" xlink:to="ufpt_VentionMedicalIncMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:label="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_NonemployeeMembersOfBoardOfDirectorsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-employee Members of Board of Directors [Member]</link:label>
    <link:label xlink:label="ufpt_NonemployeeMembersOfBoardOfDirectorsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Person serving on the board of directors (who collectively have responsibility for governing the entity).</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:to="ufpt_NonemployeeMembersOfBoardOfDirectorsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:label="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_PolyurethaneFoamAntitrustLawsuitMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Polyurethane Foam Antitrust Lawsuit [Member]</link:label>
    <link:label xlink:label="ufpt_PolyurethaneFoamAntitrustLawsuitMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the defendant in a class action lawsuit against a number of polyurethane foam suppliers.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:to="ufpt_PolyurethaneFoamAntitrustLawsuitMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</link:label>
    <link:label xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DisclosureTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DisclosureTextBlockAbstract</link:label>
    <link:label xlink:label="us-gaap_DisclosureTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes to Financial Statements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureTextBlockAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LiabilitiesCurrent</link:label>
    <link:label xlink:label="us-gaap_LiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Raw materials</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:label="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Chairman Chief Executive Officer and President [Member]</link:label>
    <link:label xlink:label="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the entity's Chairman, the highest ranking executive officer, who has an ultimate managerial responsibility for the entity and who reports to the board of directors and the first or second ranking officer who may be appointed by the board of directors.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:to="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finished goods</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice" xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice" xlink:type="locator"/>
    <link:label xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice</link:label>
    <link:label xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares Paid for Exercise Price and Tax Withholding for Share-based Compensation, Average Market Price</link:label>
    <link:label xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the average price per share used by the employees to repay the employer for the exercise price and income tax withholding obligations.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice" xlink:to="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Work in process</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Changes in operating assets and liabilities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Compensation, Stock Options, Activity [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Compensation, Restricted Stock Units Award Activity [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentIncomeInterest" xlink:label="us-gaap_InvestmentIncomeInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InvestmentIncomeInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentIncomeInterest" xlink:to="us-gaap_InvestmentIncomeInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expected dividends</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Risk-free interest rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expected volatility</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingIncomeLoss</link:label>
    <link:label xlink:label="us-gaap_OperatingIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Operating income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PreferredSharePurchaseRightMember" xlink:label="ufpt_PreferredSharePurchaseRightMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_PreferredSharePurchaseRightMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Share Purchase Right [Member]</link:label>
    <link:label xlink:label="ufpt_PreferredSharePurchaseRightMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the preferred share purchase right (the "Right"). Each Right entitles the registered holders to purchase from the Company one one-thousandth of a share of Series A Junior Participating Preferred Stock of the Company.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_PreferredSharePurchaseRightMember" xlink:to="ufpt_PreferredSharePurchaseRightMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredIncomeTaxExpenseBenefit</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expected term (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GrossProfit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GrossProfit</link:label>
    <link:label xlink:label="us-gaap_GrossProfit-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseTypeDomain" xlink:label="us-gaap_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LitigationCaseTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Litigation Case [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LitigationCaseTypeDomain" xlink:to="us-gaap_LitigationCaseTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TreasuryStockShares" xlink:label="us-gaap_TreasuryStockShares" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TreasuryStockShares-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury stock, shares (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockShares" xlink:to="us-gaap_TreasuryStockShares-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:label xlink:label="dei_AmendmentFlag-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseAxis" xlink:label="us-gaap_LitigationCaseAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LitigationCaseAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Litigation Case [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LitigationCaseAxis" xlink:to="us-gaap_LitigationCaseAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-term debt</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, $.01 par value, 20,000,000 shares authorized; 7,299,721 and 7,270,162 shares issued and outstanding, respectively at September 30, 2017; and 7,242,023 and 7,212,464 shares issued and outstanding, respectively at December 31, 2016</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsForRestructuring" xlink:label="us-gaap_PaymentsForRestructuring" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsForRestructuring-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsForRestructuring</link:label>
    <link:label xlink:label="us-gaap_PaymentsForRestructuring-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payments for Restructuring</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRestructuring" xlink:to="us-gaap_PaymentsForRestructuring-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Remainder of Fiscal Year</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities</link:label>
    <link:label xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Excess tax benefit on share-based compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, shares authorized (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shares vested (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesIssued-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, shares issued (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Unvested, weighted average award date fair value (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Unvested, weighted average award date fair value (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherAssetsNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Unvested (in shares)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Unvested (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockParOrStatedValuePerShare-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, par value (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_CommonStockParOrStatedValuePerShare-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Awarded, weighted average award date fair value (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</link:label>
    <link:label xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Loss (Gain) on sale of fixed assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Awarded (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:label xlink:label="dei_CurrentFiscalYearEndDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Shares vested (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Vested and expected to vest, weighted average exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Vested and expected to vest (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossRelatedToLitigationSettlement" xlink:label="us-gaap_GainLossRelatedToLitigationSettlement" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GainLossRelatedToLitigationSettlement-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GainLossRelatedToLitigationSettlement</link:label>
    <link:label xlink:label="us-gaap_GainLossRelatedToLitigationSettlement-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Material overcharge settlement</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossRelatedToLitigationSettlement" xlink:to="us-gaap_GainLossRelatedToLitigationSettlement-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentFiscalPeriodFocus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Vested and expected to vest, weighted average remaining contractual life (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentFiscalYearFocus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Vested and expected to vest, aggregate intrinsic value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercisable, aggregate intrinsic value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercisable, weighted average remaining contractual life (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentPeriodEndDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred stock, $.01 par value, 1,000,000 shares authorized; zero shares issued or outstanding</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Estimated useful life (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockSharesIssued-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred stock, shares issued (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestructuringCharges-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restructuring costs</link:label>
    <link:label xlink:label="us-gaap_RestructuringCharges-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restructuring Charges</link:label>
    <link:label xlink:label="us-gaap_RestructuringCharges-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringCharges" xlink:to="us-gaap_RestructuringCharges-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ChiefExecutiveOfficerMember" xlink:label="us-gaap_ChiefExecutiveOfficerMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ChiefExecutiveOfficerMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Chief Executive Officer [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ChiefExecutiveOfficerMember" xlink:to="us-gaap_ChiefExecutiveOfficerMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercisable, weighted average exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentType-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercisable (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding, aggregate intrinsic value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding, weighted average remaining contractual life (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DepreciationDepletionAndAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred stock, shares authorized (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted-average grant date fair value (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessExitCosts1" xlink:label="us-gaap_BusinessExitCosts1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BusinessExitCosts1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Relocation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessExitCosts1" xlink:to="us-gaap_BusinessExitCosts1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsPayableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentInformationLineItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Line Items]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationLineItems-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentInformationTable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Table]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationTable-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred stock, par value (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AssetsCurrent</link:label>
    <link:label xlink:label="us-gaap_AssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccruedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityFilerCategory-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCurrentReportingStatus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityVoluntaryFilers-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityWellKnownSeasonedIssuer-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding, weighted average exercise price (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding, weighted average exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions" xlink:label="us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions</link:label>
    <link:label xlink:label="us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Adjustments, Settlements, and Unusual Provisions</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions" xlink:to="us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expired, weighted average exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxesReceivable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Refundable income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesReceivable" xlink:to="us-gaap_IncomeTaxesReceivable-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Granted, weighted average exercise price (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Intangible Assets Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_IntangibleAssetsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercised, weighted average exercise price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AmortizationOfIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AmortizationOfIntangibleAssets</link:label>
    <link:label xlink:label="us-gaap_AmortizationOfIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted average common equivalent shares due to stock options and RSUs (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCentralIndexKey-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityRegistrantName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityDomain" xlink:to="dei_EntityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted average common shares outstanding:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:label xlink:label="dei_LegalEntityAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LegalEntityAxis" xlink:to="dei_LegalEntityAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightDomain" xlink:label="us-gaap_ClassOfWarrantOrRightDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ClassOfWarrantOrRightDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Warrant or Right [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfWarrantOrRightDomain" xlink:to="us-gaap_ClassOfWarrantOrRightDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding (in shares)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightAxis" xlink:label="us-gaap_ClassOfWarrantOrRightAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ClassOfWarrantOrRightAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Warrant or Right [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfWarrantOrRightAxis" xlink:to="us-gaap_ClassOfWarrantOrRightAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:label="us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1</link:label>
    <link:label xlink:label="us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Warrant or Right, Exercise Price of Warrants or Rights</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:to="us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight" xlink:label="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight</link:label>
    <link:label xlink:label="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Warrant or Right, Number of Securities Called by Each Warrant or Right</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight" xlink:to="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_RevisionsPolicyPolicyTextBlock" xlink:label="ufpt_RevisionsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="ufpt_RevisionsPolicyPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revisions Policy [Policy Text Block]</link:label>
    <link:label xlink:label="ufpt_RevisionsPolicyPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disclosure of accounting policy for revisions to financial statements.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_RevisionsPolicyPolicyTextBlock" xlink:to="ufpt_RevisionsPolicyPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Expired (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesCurrentAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current liabilities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from sale of fixed assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdditionalPaidInCapital-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PrepaidExpenseCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Assets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_Assets</link:label>
    <link:label xlink:label="us-gaap_Assets-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InterestPaidNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label xlink:label="us-gaap_InventoryNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total inventory</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquityAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders&#8217; equity:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:label xlink:label="dei_TradingSymbol-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</link:label>
    <link:label xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:label xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Additions to property, plant and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets" xlink:label="us-gaap_GainLossOnDispositionOfAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GainLossOnDispositionOfAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GainLossOnDispositionOfAssets</link:label>
    <link:label xlink:label="us-gaap_GainLossOnDispositionOfAssets-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Loss (Gain) on sale of fixed assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets" xlink:to="us-gaap_GainLossOnDispositionOfAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockholdersEquity</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total stockholders&#8217; equity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PlanNameAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling, general &amp; administrative expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PlanNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameDomain" xlink:to="us-gaap_PlanNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</link:label>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommitmentsAndContingencies-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and contingencies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Liabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_Liabilities</link:label>
    <link:label xlink:label="us-gaap_Liabilities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:label="us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CapitalExpendituresIncurredButNotYetPaid-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capital additions accrued but not yet paid</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:to="us-gaap_CapitalExpendituresIncurredButNotYetPaid-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</link:label>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ReceivablesNetCurrent" xlink:label="us-gaap_ReceivablesNetCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReceivablesNetCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Receivables, less allowance for doubtful accounts of $602 at September 30, 2017 and $567 at December 31, 2016</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReceivablesNetCurrent" xlink:to="us-gaap_ReceivablesNetCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestrictedStockUnitsRSUMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockUnitsRSUMember" xlink:to="us-gaap_RestrictedStockUnitsRSUMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsSold" xlink:label="us-gaap_CostOfGoodsSold" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CostOfGoodsSold-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of sales</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsSold" xlink:to="us-gaap_CostOfGoodsSold-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Intangible assets, net</link:label>
    <link:label xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net balance</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense</link:label>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Tax Benefit from Compensation Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeStockOptionMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Stock Option [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOptionMember" xlink:to="us-gaap_EmployeeStockOptionMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Accumulated amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gross amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Receivables, allowance for doubtful accounts</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementLineItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disclosure of Compensation Related Costs, Share-based Payments [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related Party Transactions Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-cash investing and financing activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InterestExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_InterestExpense</link:label>
    <link:label xlink:label="us-gaap_InterestExpense-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Interest expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpense" xlink:to="us-gaap_InterestExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SupplementalCashFlowInformationAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash paid for:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxesPaidNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income taxes, net of refunds</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaidNet" xlink:to="us-gaap_IncomeTaxesPaidNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueDisclosuresTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresTextBlock" xlink:to="us-gaap_FairValueDisclosuresTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Goodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PropertyPlantAndEquipmentNet</link:label>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net property, plant and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</link:label>
    <link:label xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Less accumulated depreciation and amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, plant and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201609Member" xlink:label="us-gaap_AccountingStandardsUpdate201609Member" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountingStandardsUpdate201609Member-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Standards Update 2016-09 [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingStandardsUpdate201609Member" xlink:to="us-gaap_AccountingStandardsUpdate201609Member-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInFinancingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in financing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInInvestingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in investing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInOperatingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by operating activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease</link:label>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net increase in cash and cash equivalents</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:to="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TableTextBlock</link:label>
    <link:label xlink:label="us-gaap_TableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes Tables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_TableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_EmployeesMember" xlink:label="ufpt_EmployeesMember" xlink:type="locator"/>
    <link:label xlink:label="ufpt_EmployeesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employees [Member]</link:label>
    <link:label xlink:label="ufpt_EmployeesMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents employees of the company.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ufpt_EmployeesMember" xlink:to="ufpt_EmployeesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</link:label>
    <link:label xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income before income tax expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net income per share:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract-label" xlink:type="arc"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>10
<FILENAME>ufpt-20170930_pre.xml
<DESCRIPTION>XBRL PRESENTATION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 02:08AM UTC 2017-11-08--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting" xlink:href="ufpt-20170930.xsd#statement-note-8-segment-reporting" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-" xlink:href="ufpt-20170930.xsd#statement-note-5-inventories-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-5-inventories-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_InventoryDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-3-fair-value-of-financial-instruments-" xlink:href="ufpt-20170930.xsd#statement-note-3-fair-value-of-financial-instruments-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-3-fair-value-of-financial-instruments-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_FairValueDisclosuresTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-" xlink:href="ufpt-20170930.xsd#statement-note-2-supplemental-cash-flow-information-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:label="us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-document-and-entity-information" xlink:href="ufpt-20170930.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityVoluntaryFilers" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityWellKnownSeasonedIssuer" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TreasuryStockShares" xlink:label="us-gaap_TreasuryStockShares" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesAuthorized" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesIssued" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesOutstanding" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesAuthorized" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesIssued" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockShares" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-" xlink:href="ufpt-20170930.xsd#statement-note-1-basis-of-presentation-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="us-gaap_RestatementAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_RestatementAdjustmentMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:label="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_The2003IncentivePlanMember" xlink:label="ufpt_The2003IncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="ufpt_The2003IncentivePlanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-" xlink:href="ufpt-20170930.xsd#statement-note-6-preferred-stock-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PreferredSharePurchaseRightMember" xlink:label="ufpt_PreferredSharePurchaseRightMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:label="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightAxis" xlink:label="us-gaap_ClassOfWarrantOrRightAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightDomain" xlink:label="us-gaap_ClassOfWarrantOrRightDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfWarrantOrRightAxis" xlink:to="us-gaap_ClassOfWarrantOrRightDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ClassOfWarrantOrRightAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfWarrantOrRightAxis" xlink:to="ufpt_PreferredSharePurchaseRightMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-" xlink:href="ufpt-20170930.xsd#statement-note-7-income-per-share-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-" xlink:href="ufpt-20170930.xsd#statement-note-9-other-intangible-assets-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes" xlink:href="ufpt-20170930.xsd#statement-note-10-income-taxes" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201609Member" xlink:label="us-gaap_AccountingStandardsUpdate201609Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AccountingStandardsUpdate201609Member" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations" xlink:href="ufpt-20170930.xsd#statement-note-11-plant-consolidations" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:label="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_LeaseTerminationMember" xlink:label="ufpt_LeaseTerminationMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_MovingAndVacatingExpenseMember" xlink:label="ufpt_MovingAndVacatingExpenseMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NewburyportMassachusettsFacilityMember" xlink:label="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PlantConsolidationDisclosureTextBlock" xlink:label="ufpt_PlantConsolidationDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="us-gaap_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RestructuringCostAndReserveAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="ufpt_MovingAndVacatingExpenseMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="ufpt_LeaseTerminationMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="ufpt_PlantConsolidationDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-" xlink:href="ufpt-20170930.xsd#statement-note-12-related-party-transactions-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:label="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_VentionMedicalIncMember" xlink:label="ufpt_VentionMedicalIncMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorCustomersAxis" xlink:label="us-gaap_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_MajorCustomersAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="ufpt_VentionMedicalIncMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement" xlink:href="ufpt-20170930.xsd#statement-note-13-material-overcharge-settlement" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NotesToFinancialStatementsAbstract" xlink:label="ufpt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:label="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LegalMattersAndContingenciesTextBlock" xlink:label="us-gaap_LegalMattersAndContingenciesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseAxis" xlink:label="us-gaap_LitigationCaseAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseTypeDomain" xlink:label="us-gaap_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LitigationCaseAxis" xlink:to="us-gaap_LitigationCaseTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LitigationCaseAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LitigationCaseAxis" xlink:to="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_LegalMattersAndContingenciesTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-significant-accounting-policies-policies" xlink:href="ufpt-20170930.xsd#statement-significant-accounting-policies-policies" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-significant-accounting-policies-policies" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_RevisionsPolicyPolicyTextBlock" xlink:label="ufpt_RevisionsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-significant-accounting-policies-policies" xlink:label="ufpt_statement-statement-significant-accounting-policies-policies" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-significant-accounting-policies-policies" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PolicyTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PolicyTextBlockAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="ufpt_RevisionsPolicyPolicyTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-tables" xlink:href="ufpt-20170930.xsd#statement-note-2-supplemental-cash-flow-information-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-tables" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-2-supplemental-cash-flow-information-tables" xlink:label="ufpt_statement-statement-note-2-supplemental-cash-flow-information-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:label="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-2-supplemental-cash-flow-information-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-tables" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-tables" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-tables" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:label="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-tables" xlink:href="ufpt-20170930.xsd#statement-note-5-inventories-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-5-inventories-tables" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-5-inventories-tables" xlink:label="ufpt_statement-statement-note-5-inventories-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-5-inventories-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-tables" xlink:href="ufpt-20170930.xsd#statement-note-7-income-per-share-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-tables" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-7-income-per-share-tables" xlink:label="ufpt_statement-statement-note-7-income-per-share-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:label="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-7-income-per-share-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-tables" xlink:href="ufpt-20170930.xsd#statement-note-8-segment-reporting-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-tables" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-8-segment-reporting-tables" xlink:label="ufpt_statement-statement-note-8-segment-reporting-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-8-segment-reporting-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-tables" xlink:href="ufpt-20170930.xsd#statement-note-9-other-intangible-assets-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-tables" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-9-other-intangible-assets-tables" xlink:label="ufpt_statement-statement-note-9-other-intangible-assets-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-9-other-intangible-assets-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-tables" xlink:href="ufpt-20170930.xsd#statement-note-11-plant-consolidations-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-tables" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-11-plant-consolidations-tables" xlink:label="ufpt_statement-statement-note-11-plant-consolidations-tables" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:label="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-11-plant-consolidations-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-1-basis-of-presentation-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestatementAdjustmentMember" xlink:label="us-gaap_RestatementAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_RestatementAdjustmentMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities-n2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:label="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation" xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice" xlink:label="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice-2" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice" xlink:label="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice-2" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_The2003IncentivePlanMember" xlink:label="ufpt_The2003IncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="ufpt_The2003IncentivePlanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromStockOptionsExercised-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice-2" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-6-preferred-stock-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PreferredSharePurchaseRightMember" xlink:label="ufpt_PreferredSharePurchaseRightMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding" xlink:label="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding-2" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:label="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightAxis" xlink:label="us-gaap_ClassOfWarrantOrRightAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightDomain" xlink:label="us-gaap_ClassOfWarrantOrRightDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:label="us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight" xlink:label="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfWarrantOrRightAxis" xlink:to="us-gaap_ClassOfWarrantOrRightDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="ufpt_SeriesAJuniorParticipatingPreferredStockMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ClassOfWarrantOrRightAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfWarrantOrRightAxis" xlink:to="ufpt_PreferredSharePurchaseRightMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-7-income-per-share-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-9-other-intangible-assets-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-10-income-taxes-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-10-income-taxes-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountingStandardsUpdate201609Member" xlink:label="us-gaap_AccountingStandardsUpdate201609Member" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit-n2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions" xlink:label="us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_TypeOfAdoptionMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AccountingStandardsUpdate201609Member" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit-n2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-11-plant-consolidations-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:label="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_LeaseTerminationMember" xlink:label="ufpt_LeaseTerminationMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_MovingAndVacatingExpenseMember" xlink:label="ufpt_MovingAndVacatingExpenseMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NewburyportMassachusettsFacilityMember" xlink:label="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsForRestructuring" xlink:label="us-gaap_PaymentsForRestructuring-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringAndRelatedCostExpectedCost1" xlink:label="us-gaap_RestructuringAndRelatedCostExpectedCost1-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCostAndReserveAxis" xlink:label="us-gaap_RestructuringCostAndReserveAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="us-gaap_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TypeOfRestructuringDomain" xlink:label="us-gaap_TypeOfRestructuringDomain" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="us-gaap_TypeOfRestructuringDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RestructuringCostAndReserveAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="ufpt_MovingAndVacatingExpenseMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringCostAndReserveAxis" xlink:to="ufpt_LeaseTerminationMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AreaOfRealEstateProperty-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RestructuringCharges-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RestructuringAndRelatedCostExpectedCost1-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PaymentsForRestructuring-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-12-related-party-transactions-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:label="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_VentionMedicalIncMember" xlink:label="ufpt_VentionMedicalIncMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorCustomersAxis" xlink:label="us-gaap_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RevenueFromRelatedParties" xlink:label="us-gaap_RevenueFromRelatedParties-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_MajorCustomersAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="ufpt_VentionMedicalIncMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="ufpt_NonemployeeMembersOfBoardOfDirectorsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromRelatedParties-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement-details-textual" xlink:href="ufpt-20170930.xsd#statement-note-13-material-overcharge-settlement-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement-details-textual" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NoteToFinancialStatementDetailsTextual" xlink:label="ufpt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:label="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseAxis" xlink:label="us-gaap_LitigationCaseAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationCaseTypeDomain" xlink:label="us-gaap_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LitigationSettlementAmountAwardedFromOtherParty" xlink:label="us-gaap_LitigationSettlementAmountAwardedFromOtherParty-2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LitigationCaseAxis" xlink:to="us-gaap_LitigationCaseTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LitigationCaseAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LitigationCaseAxis" xlink:to="ufpt_PolyurethaneFoamAntitrustLawsuitMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LitigationSettlementAmountAwardedFromOtherParty-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-option-pricing-assumptions-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-n8" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-stock-option-activity-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-4" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod-n8" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-5" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-5" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="arc"/>
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:type="arc"/>
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:type="arc"/>
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-4" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber-5" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-5-inventories-summary-of-inventory-details" xlink:href="ufpt-20170930.xsd#statement-note-5-inventories-summary-of-inventory-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-5-inventories-summary-of-inventory-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-5-inventories-summary-of-inventory-details" xlink:label="ufpt_statement-statement-note-5-inventories-summary-of-inventory-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-5-inventories-summary-of-inventory-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:href="ufpt-20170930.xsd#statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:label="ufpt_statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CustomerListsMember" xlink:label="us-gaap_CustomerListsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PatentsMember" xlink:label="us-gaap_PatentsMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_PatentsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_NoncompeteAgreementsMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_CustomerListsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CostOfGoodsSold" xlink:label="us-gaap_CostOfGoodsSold" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossRelatedToLitigationSettlement" xlink:label="us-gaap_GainLossRelatedToLitigationSettlement-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InvestmentIncomeInterest" xlink:label="us-gaap_InvestmentIncomeInterest" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="us-gaap_SalesRevenueNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SalesRevenueNet" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CostOfGoodsSold" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RestructuringCharges" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GainLossRelatedToLitigationSettlement-n8" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-n8" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingIncomeLoss-3" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InvestmentIncomeInterest" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InterestExpense-n8" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-3" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss-3" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:href="ufpt-20170930.xsd#statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" xlink:label="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_EmployeesMember" xlink:label="ufpt_EmployeesMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:label="ufpt_statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ChiefExecutiveOfficerMember" xlink:label="us-gaap_ChiefExecutiveOfficerMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DirectorMember" xlink:label="us-gaap_DirectorMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TitleOfIndividualAxis" xlink:label="us-gaap_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TitleOfIndividualAxis" xlink:to="us-gaap_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_IncomeStatementLocationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TitleOfIndividualAxis" xlink:to="us-gaap_DirectorMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TitleOfIndividualAxis" xlink:to="us-gaap_ChiefExecutiveOfficerMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TitleOfIndividualAxis" xlink:to="ufpt_EmployeesMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense-1" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:href="ufpt-20170930.xsd#statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:label="ufpt_statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-1" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-1" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-restructuring-costs-details" xlink:href="ufpt-20170930.xsd#statement-note-11-plant-consolidations-restructuring-costs-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-restructuring-costs-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_NewburyportMassachusettsFacilityMember" xlink:label="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-11-plant-consolidations-restructuring-costs-details" xlink:label="ufpt_statement-statement-note-11-plant-consolidations-restructuring-costs-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_BusinessExitCosts1" xlink:label="us-gaap_BusinessExitCosts1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RestructuringCharges" xlink:label="us-gaap_RestructuringCharges-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SegmentGeographicalDomain" xlink:label="us-gaap_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementGeographicalAxis" xlink:label="us-gaap_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-11-plant-consolidations-restructuring-costs-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="us-gaap_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementGeographicalAxis" xlink:to="ufpt_NewburyportMassachusettsFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessExitCosts1" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RestructuringCharges-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:href="ufpt-20170930.xsd#statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:label="ufpt_statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:label="us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_InterestPaidNet" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaidNet" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-balance-sheets-current-period-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:label="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:label="us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ReceivablesNetCurrent" xlink:label="us-gaap_ReceivablesNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue-n8" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ReceivablesNetCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxesReceivable" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsCurrent-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-n8" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet-3" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherAssetsNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Assets-3" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermDebtCurrent" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_Liabilities-3" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_PreferredStockValue" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapital" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_TreasuryStockValue-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="ufpt-20170930.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ProceedsFromStockOptionsExercisedNet" xlink:label="ufpt_ProceedsFromStockOptionsExercisedNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-4" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-5" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities" xlink:label="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets" xlink:label="us-gaap_GainLossOnDispositionOfAssets-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities-1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_IncreaseDecreaseInReceivables" xlink:label="us-gaap_IncreaseDecreaseInReceivables-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt-n8" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnDispositionOfAssets-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit-1" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInReceivables-n8" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable-1" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities-1" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n8" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfLongTermDebt-n8" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="ufpt_ProceedsFromStockOptionsExercisedNet" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue-4" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-net-sales-by-market-details" xlink:href="ufpt-20170930.xsd#statement-note-8-segment-reporting-net-sales-by-market-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-net-sales-by-market-details" xlink:type="extended">
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_AerospaceDefenseMember" xlink:label="ufpt_AerospaceDefenseMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_AutomotiveMember" xlink:label="ufpt_AutomotiveMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ConsumerMember" xlink:label="ufpt_ConsumerMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_ElectronicsMember" xlink:label="ufpt_ElectronicsMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_IndustrialMember" xlink:label="ufpt_IndustrialMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_MedicalMember" xlink:label="ufpt_MedicalMember" xlink:type="locator"/>
    <link:loc xlink:href="ufpt-20170930.xsd#ufpt_statement-statement-note-8-segment-reporting-net-sales-by-market-details" xlink:label="ufpt_statement-statement-note-8-segment-reporting-net-sales-by-market-details" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_MajorCustomersAxis" xlink:label="us-gaap_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_NameOfMajorCustomerDomain" xlink:label="us-gaap_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNet" xlink:label="us-gaap_SalesRevenueNet" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_ScenarioUnspecifiedDomain" xlink:label="us-gaap_ScenarioUnspecifiedDomain" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementScenarioAxis" xlink:label="us-gaap_StatementScenarioAxis" xlink:type="locator"/>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2017/elts/us-gaap-2017-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ufpt_statement-statement-note-8-segment-reporting-net-sales-by-market-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementScenarioAxis" xlink:to="us-gaap_ScenarioUnspecifiedDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="us-gaap_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_MajorCustomersAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="ufpt_MedicalMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="ufpt_ConsumerMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="ufpt_AutomotiveMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="ufpt_AerospaceDefenseMember" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="ufpt_IndustrialMember" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_MajorCustomersAxis" xlink:to="ufpt_ElectronicsMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementScenarioAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SalesRevenueNet" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" xlink:type="arc"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762009760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document And Entity Information - shares<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Nov. 06, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">UFP TECHNOLOGIES INC<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000914156<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">ufpt<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,267,662<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Sep. 30,  2017<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2017<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>If the value is true, then the document is an amendment to previously-filed/accepted document.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal period of the document report. For a first quarter 2006 quarterly report, which may also provide financial information from prior periods, the first fiscal quarter should be given as the fiscal period focus. Values: FY, Q1, Q2, Q3, Q4, H1, H2, M9, T1, T2, T3, M8, CY.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in CCYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word "Other".</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12b<br> -Subsection 1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate "Yes" or "No" whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: (1) Large Accelerated Filer, (2) Accelerated Filer, (3) Non-accelerated Filer, (4) Smaller Reporting Company (Non-accelerated) or (5) Smaller Reporting Accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12b<br> -Subsection 1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate "Yes" or "No" if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityVoluntaryFilers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate "Yes" or "No" if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityWellKnownSeasonedIssuer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6768073872">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Current Period Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Dec. 31, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 37,246<span></span>
</td>
<td class="nump">$ 31,359<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReceivablesNetCurrent', window );">Receivables, less allowance for doubtful accounts of $602 at September 30, 2017 and $567 at December 31, 2016</a></td>
<td class="nump">22,044<span></span>
</td>
<td class="nump">21,249<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">13,136<span></span>
</td>
<td class="nump">14,151<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">2,234<span></span>
</td>
<td class="nump">2,281<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxesReceivable', window );">Refundable income taxes</a></td>
<td class="nump">979<span></span>
</td>
<td class="nump">807<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">75,639<span></span>
</td>
<td class="nump">69,847<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment</a></td>
<td class="nump">103,797<span></span>
</td>
<td class="nump">96,806<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less accumulated depreciation and amortization</a></td>
<td class="num">(51,815)<span></span>
</td>
<td class="num">(48,290)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Net property, plant and equipment</a></td>
<td class="nump">51,982<span></span>
</td>
<td class="nump">48,516<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">7,322<span></span>
</td>
<td class="nump">7,322<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">79<span></span>
</td>
<td class="nump">318<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other assets</a></td>
<td class="nump">2,069<span></span>
</td>
<td class="nump">1,931<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">137,091<span></span>
</td>
<td class="nump">127,934<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">4,958<span></span>
</td>
<td class="nump">4,002<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued expenses</a></td>
<td class="nump">5,356<span></span>
</td>
<td class="nump">4,698<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Short-term debt</a></td>
<td class="nump">84<span></span>
</td>
<td class="nump">856<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">10,398<span></span>
</td>
<td class="nump">9,556<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesNoncurrent', window );">Deferred income taxes</a></td>
<td class="nump">3,713<span></span>
</td>
<td class="nump">3,459<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent', window );">Non-qualified deferred compensation plan</a></td>
<td class="nump">1,949<span></span>
</td>
<td class="nump">1,682<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other liabilities</a></td>
<td class="nump">118<span></span>
</td>
<td class="nump">184<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">16,178<span></span>
</td>
<td class="nump">14,881<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders&#8217; equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, $.01 par value, 1,000,000 shares authorized; zero shares issued or outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $.01 par value, 20,000,000 shares authorized; 7,299,721 and 7,270,162 shares issued and outstanding, respectively at September 30, 2017; and 7,242,023 and 7,212,464 shares issued and outstanding, respectively at December 31, 2016</a></td>
<td class="nump">73<span></span>
</td>
<td class="nump">72<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">26,580<span></span>
</td>
<td class="nump">25,216<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">94,847<span></span>
</td>
<td class="nump">88,352<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Treasury stock at cost, 29,559 shares at September 30, 2017 and December 31, 2016</a></td>
<td class="num">(587)<span></span>
</td>
<td class="num">(587)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders&#8217; equity</a></td>
<td class="nump">120,913<span></span>
</td>
<td class="nump">113,053<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders' equity</a></td>
<td class="nump">$ 137,091<span></span>
</td>
<td class="nump">$ 127,934<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.14)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders. Includes adjustments to additional paid in capital. Some examples of such adjustments include recording the issuance of debt with a beneficial conversion feature and certain tax consequences of equity instruments awarded to employees. Use this element for the aggregate amount of additional paid-in capital associated with common and preferred stock. For additional paid-in capital associated with only common stock, use the element additional paid in capital, common stock. For additional paid-in capital associated with only preferred stock, use the element additional paid in capital, preferred stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6801-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3044-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.(a),19)<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82911808&amp;loc=d3e14326-108349<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate carrying value as of the balance sheet date of the liabilities for all deferred compensation arrangements payable beyond one year (or the operating cycle, if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences, with jurisdictional netting and classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84176650&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84176650&amp;loc=d3e31958-109318<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=84176650&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=35741047&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388280&amp;loc=d3e13770-109266<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=77989000&amp;loc=SL49117168-202975<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.5(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.3(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.10)<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=68049868&amp;loc=d3e3927-108312<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6787-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 10<br> -Section 05<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=68074540&amp;loc=d3e5879-108316<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The total amount due to the entity within one year of the balance sheet date (or one operating cycle, if longer) from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such receivables to an amount that approximates their net realizable value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 210<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-06(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6488278&amp;loc=d3e604059-122996<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879938&amp;loc=d3e572229-122910<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29,30)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=6405834&amp;loc=d3e23315-112656<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762237776">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Dec. 31, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Receivables, allowance for doubtful accounts</a></td>
<td class="nump">$ 602<span></span>
</td>
<td class="nump">$ 567<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized (in shares)</a></td>
<td class="nump">1,000,000<span></span>
</td>
<td class="nump">1,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, shares issued (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock, shares outstanding (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized (in shares)</a></td>
<td class="nump">20,000,000<span></span>
</td>
<td class="nump">20,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued (in shares)</a></td>
<td class="nump">7,299,721<span></span>
</td>
<td class="nump">7,242,023<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (in shares)</a></td>
<td class="nump">7,270,162<span></span>
</td>
<td class="nump">7,212,464<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockShares', window );">Treasury stock, shares (in shares)</a></td>
<td class="nump">29,559<span></span>
</td>
<td class="nump">29,559<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A valuation allowance for trade and other receivables due to an Entity within one year (or the normal operating cycle, whichever is longer) that are expected to be uncollectible.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=84173941&amp;loc=d3e5074-111524<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159872&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29,30)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762181408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Income (Unaudited) - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Net sales</a></td>
<td class="nump">$ 35,684<span></span>
</td>
<td class="nump">$ 37,220<span></span>
</td>
<td class="nump">$ 110,623<span></span>
</td>
<td class="nump">$ 109,626<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsSold', window );">Cost of sales</a></td>
<td class="nump">27,491<span></span>
</td>
<td class="nump">28,768<span></span>
</td>
<td class="nump">82,973<span></span>
</td>
<td class="nump">83,161<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">8,193<span></span>
</td>
<td class="nump">8,452<span></span>
</td>
<td class="nump">27,650<span></span>
</td>
<td class="nump">26,465<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general &amp; administrative expenses</a></td>
<td class="nump">5,693<span></span>
</td>
<td class="nump">6,027<span></span>
</td>
<td class="nump">18,070<span></span>
</td>
<td class="nump">18,402<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring costs</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">25<span></span>
</td>
<td class="nump">63<span></span>
</td>
<td class="nump">203<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossRelatedToLitigationSettlement', window );">Material overcharge settlement</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(1,681)<span></span>
</td>
<td class="num">(121)<span></span>
</td>
<td class="num">(2,114)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Loss (Gain) on sale of fixed assets</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="num">(4)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">2,500<span></span>
</td>
<td class="nump">4,081<span></span>
</td>
<td class="nump">9,635<span></span>
</td>
<td class="nump">9,978<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentIncomeInterest', window );">Interest income</a></td>
<td class="nump">63<span></span>
</td>
<td class="nump">42<span></span>
</td>
<td class="nump">147<span></span>
</td>
<td class="nump">104<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="num">(12)<span></span>
</td>
<td class="num">(17)<span></span>
</td>
<td class="num">(39)<span></span>
</td>
<td class="num">(53)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income tax expense</a></td>
<td class="nump">2,551<span></span>
</td>
<td class="nump">4,106<span></span>
</td>
<td class="nump">9,743<span></span>
</td>
<td class="nump">10,029<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense</a></td>
<td class="nump">856<span></span>
</td>
<td class="nump">1,437<span></span>
</td>
<td class="nump">3,248<span></span>
</td>
<td class="nump">3,550<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 1,695<span></span>
</td>
<td class="nump">$ 2,669<span></span>
</td>
<td class="nump">$ 6,495<span></span>
</td>
<td class="nump">$ 6,479<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net income per share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (in dollars per share)</a></td>
<td class="nump">$ 0.23<span></span>
</td>
<td class="nump">$ 0.37<span></span>
</td>
<td class="nump">$ 0.90<span></span>
</td>
<td class="nump">$ 0.90<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (in dollars per share)</a></td>
<td class="nump">$ 0.23<span></span>
</td>
<td class="nump">$ 0.37<span></span>
</td>
<td class="nump">$ 0.89<span></span>
</td>
<td class="nump">$ 0.89<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted average common shares outstanding:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (in shares)</a></td>
<td class="nump">7,264<span></span>
</td>
<td class="nump">7,195<span></span>
</td>
<td class="nump">7,240<span></span>
</td>
<td class="nump">7,183<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (in shares)</a></td>
<td class="nump">7,353<span></span>
</td>
<td class="nump">7,282<span></span>
</td>
<td class="nump">7,326<span></span>
</td>
<td class="nump">7,265<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total costs related to goods produced and sold during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=96948231&amp;loc=d3e4984-109258<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 6: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossRelatedToLitigationSettlement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) recognized in settlement of litigation and insurance claims. Excludes claims within an insurance entity's normal claims settlement process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=82911808&amp;loc=d3e14326-108349<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossRelatedToLitigationSettlement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a),(b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=64930785&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIncomeInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIncomeInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.P.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140864-122747<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SalesRevenueNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total revenue from sale of goods and services rendered during the reporting period, in the normal course of business, reduced by sales returns and allowances, and sales discounts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SalesRevenueNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=68048583&amp;loc=d3e3636-108311<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1505-109256<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6768472528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 6,495<span></span>
</td>
<td class="nump">$ 6,479<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">4,171<span></span>
</td>
<td class="nump">4,109<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnDispositionOfAssets', window );">Loss (Gain) on sale of fixed assets</a></td>
<td class="nump">3<span></span>
</td>
<td class="num">(4)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation</a></td>
<td class="nump">842<span></span>
</td>
<td class="nump">871<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities', window );">Excess tax benefit on share-based compensation</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(126)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes</a></td>
<td class="nump">254<span></span>
</td>
<td class="nump">224<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInReceivables', window );">Receivables, net</a></td>
<td class="num">(795)<span></span>
</td>
<td class="num">(4,826)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="nump">1,015<span></span>
</td>
<td class="num">(366)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidExpense', window );">Prepaid expenses</a></td>
<td class="nump">47<span></span>
</td>
<td class="num">(1,231)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable', window );">Refundable income taxes</a></td>
<td class="num">(172)<span></span>
</td>
<td class="nump">1,146<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other assets</a></td>
<td class="num">(138)<span></span>
</td>
<td class="num">(93)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="nump">429<span></span>
</td>
<td class="nump">197<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued expenses</a></td>
<td class="nump">658<span></span>
</td>
<td class="num">(317)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities', window );">Non-qualified deferred compensation plan and other liabilities</a></td>
<td class="nump">201<span></span>
</td>
<td class="nump">205<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">13,010<span></span>
</td>
<td class="nump">6,268<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Additions to property, plant and equipment</a></td>
<td class="num">(6,880)<span></span>
</td>
<td class="num">(5,766)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from sale of fixed assets</a></td>
<td class="nump">6<span></span>
</td>
<td class="nump">4<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(6,874)<span></span>
</td>
<td class="num">(5,762)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebt', window );">Principal repayments of long-term debt</a></td>
<td class="num">(772)<span></span>
</td>
<td class="num">(758)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_ufpt_ProceedsFromStockOptionsExercisedNet', window );">Proceeds from exercise of stock options, net of attestation</a></td>
<td class="nump">630<span></span>
</td>
<td class="nump">529<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities', window );">Excess tax benefit on share-based compensation</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">126<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Payment of statutory withholdings for stock options exercised and restricted stock units vested</a></td>
<td class="num">(107)<span></span>
</td>
<td class="num">(89)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(249)<span></span>
</td>
<td class="num">(192)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease', window );">Net increase in cash and cash equivalents</a></td>
<td class="nump">5,887<span></span>
</td>
<td class="nump">314<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at beginning of period</a></td>
<td class="nump">31,359<span></span>
</td>
<td class="nump">29,804<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at end of period</a></td>
<td class="nump">$ 37,246<span></span>
</td>
<td class="nump">$ 30,118<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ufpt_ProceedsFromStockOptionsExercisedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the amount received from holders exercising their stock options, net of attestation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ufpt_ProceedsFromStockOptionsExercisedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ufpt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3044-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash and cash equivalents. Cash and cash equivalents are the amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Includes effect from exchange rate changes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3521-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=98513438&amp;loc=d3e33268-110906<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from realized tax benefit related to deductible compensation cost reported on the entity's tax return for equity instruments in excess of the compensation cost for those instruments recognized for financial reporting purposes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=96864182&amp;loc=d3e11374-113907<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for realized tax benefit related to deductible compensation cost reported on the entity's tax return for equity instruments in excess of the compensation cost for those instruments recognized for financial reporting purposes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=96864182&amp;loc=d3e11374-113907<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnDispositionOfAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=64827811&amp;loc=d3e1361-107760<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84176398&amp;loc=d3e2941-110230<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInIncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating liabilities classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the total amount due within one year (or one operating cycle) from all parties, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3521-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 26<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3574-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3521-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 26<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3574-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3521-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879574&amp;loc=d3e536633-122882<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=6879464&amp;loc=d3e573970-122913<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy an employee's income tax withholding obligation as part of a net-share settlement of a share-based award.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 25<br> -Paragraph 19A<br> -URI http://asc.fasb.org/extlink&amp;oid=96949009&amp;loc=SL79513924-113897<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of noncash, equity-based employee remuneration. This may include the value of stock or unit options, amortization of restricted stock or units, and adjustment for officers' compensation. As noncash, this element is an add back when calculating net cash generated by operating activities using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758861488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Basis of Presentation<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock', window );">Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 0"></td> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Basis of Presentation</div></td> </tr>  </table> <div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The interim condensed consolidated financial statements of UFP Technologies,&nbsp;Inc. (the &#x201c;Company&#x201d;) presented herein, have been prepared pursuant to the rules&nbsp;of the Securities and Exchange Commission for quarterly reports on Form&nbsp;<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">10</div>-Q and do <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> include all the information and note disclosures required by accounting principles generally accepted in the United States of America. These statements should be read in conjunction with the consolidated financial statements and notes thereto for the year ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December 31, 2016, </div>included in the Company's <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div> Annual Report on Form&nbsp;<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">10</div>-K, as filed with the Securities and Exchange Commission.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The condensed consolidated balance sheet as of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017, </div>the condensed consolidated statements of income for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016,</div> and the condensed consolidated statements of cash flows for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div> are unaudited but, in the opinion of management, include all adjustments (consisting of normal, recurring adjustments) necessary for a fair presentation of results for these interim periods. The condensed consolidated balance sheet as of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December 31, 2016 </div>has been derived from the Company&#x2019;s annual financial statements that were audited by an independent registered public accounting firm, but does <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> include all of the information and footnotes required for complete annual financial statements.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The results of operations for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-months periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017, </div>are <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> necessarily indicative of the results to be expected for the entire fiscal year ending <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December 31, 2017.</div></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"><div style="display: inline; font-style: italic;">Recent Accounting Pronouncements</div></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"><div style="display: inline; font-style: italic;">&nbsp;</div></div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">In <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> May 2014, </div>the Financial Accounting Standards Board (FASB) issued Accounting Standards Update (ASU) <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2014</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">09,</div> <div style="display: inline; font-style: italic;">Revenue from Contracts with Customers</div>, which requires an entity to recognize the amount of revenue to which it expects to be entitled for the transfer of promised goods or services to customers. This standard will replace most existing revenue recognition guidance when it becomes effective. The standard permits the use of either the full retrospective or modified retrospective transition methods. The Company expects to adopt the standard in the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">first</div> quarter of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2018</div> using the modified retrospective transition method. The Company has identified its primary revenue streams, completed a preliminary review of a representative sample of contracts with its customers and is in the process of evaluating the impact of this ASU on its revenue streams and accounting policies. Based on the procedures completed to date, the Company expects that for a significant portion of its business, the recognition of revenue under the updated standard will occur at a point in time, which is consistent with current practice. The Company has identified certain revenue streams for which the recognition of revenue <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> may </div>occur over time, which is a change from current practice. These revenue streams include certain customer stocking commitments. Additionally, the Company has identified certain revenue streams for which the recognition of revenue <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> may </div>be deferred, which is also a change from current practice. These revenue streams include certain tooling sales. The Company does <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> expect that the impact of these changes in the timing of revenue recognition for these items to be significant to the financial statements. The Company is also in the process of updating its internal controls and drafting the expanded disclosures as required by this ASU. <div style="display: inline; color: windowtext">The Company does <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> expect significant changes to its systems or internal controls. As the Company continues thr</div>ough the adoption process, it is possible that these preliminary conclusions <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> may </div>change.</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">In <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> February 2016, </div>the FASB issued ASU <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div>&nbsp;<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">02,</div> <div style="display: inline; font-style: italic;">Leases.</div> The guidance in this ASU supersedes the leasing guidance in Topic <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">840,</div> <div style="display: inline; font-style: italic;">Leases</div>. Under the new guidance, lessees are required to recognize lease assets and lease liabilities on the balance sheet for those leases previously classified as operating leases. The amendments in ASU <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div>&nbsp;<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">02</div> are effective for annual reporting periods beginning after <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December&nbsp;</div><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">15,</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2018,</div> including interim periods within that reporting period with early adoption permitted. The Company is evaluating the impact of adopting this ASU on its consolidated financial position and results of operations.</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">In <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> March 2016, </div>the FASB issued ASU <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">09,</div> <div style="display: inline; font-style: italic;">Improvements to Employee Share Based Payment Accounting</div>. This ASU simplifies several aspects of the accounting for share-based payment transactions, including income tax consequences, classification of awards, forfeitures and classification on the statement of cash flows. The Company adopted this ASU on <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> January 1, 2017. </div>As the Company has <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> had a significant amount of forfeitures historically, under the provisions of this ASU the Company has elected to account for forfeitures as they occur, rather than estimate expected forfeitures. The impact of adopting this update to the Company&#x2019;s Consolidated Financial Statements will depend on market factors and the timing and intrinsic value of future share-based compensation award vests and exercises. Subsequent to adoption, the Company notes the potential for volatility in its effective tax rate as any windfall or shortfall tax benefits related to its share-based compensation plans will be recorded directly to income tax expense in the Condensed Consolidated Statement of Income.</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></div> <!-- Field: Page; Sequence: 6; Value: 3 -->   <!-- Field: /Page --> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></div><div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"><div style="display: inline; font-style: italic;">Revisions</div></div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">Certain revisions have been made to the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div> Condensed Consolidated Statement of Cash Flows to conform to the current year presentation relating to a reserve for uncertain tax positions and to cash paid for capital expenditures. The reclassification of a reserve for uncertain tax positions resulted in an increase to the change in refundable income taxes of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$315,000</div> and a decrease to the change in accrued expenses of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$315,000.</div> A change in presentation of cash paid for capital expenditures resulted in a decrease of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$311,000</div> in both the change in accounts payable and in additions to property, plant and equipment, net. These revisions had <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">no</div> impact on previously reported net income and are deemed immaterial to the previously issued financial statements.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -URI http://asc.fasb.org/topic&amp;trid=2122149<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -URI http://asc.fasb.org/topic&amp;trid=2197479<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6900872560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Supplemental Cash Flow Information<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashFlowSupplementalDisclosuresTextBlock', window );">Cash Flow, Supplemental Disclosures [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 0"></td> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Supplemental Cash Flow Information</div></td> </tr>  </table> <div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br /> September 30</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-style: italic; text-align: right">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-style: italic; text-align: right">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; text-align: center">(in thousands)</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Cash paid for:</td> <td style="font-size: 10pt; font-weight: bold">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: right">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: right">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="width: 70%; font-size: 10pt; padding-left: 10pt">Interest</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">37</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">51</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Income taxes, net of refunds</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3,167</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,178</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-left: 0pt">Non-cash investing and financing activities:</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Capital additions accrued but not yet paid</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">527</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">311</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr>  </table> </div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashFlowSupplementalDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for supplemental cash flow activities, including cash, noncash, and part noncash transactions, for the period. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -URI http://asc.fasb.org/topic&amp;trid=2134446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashFlowSupplementalDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758864384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Fair Value of Financial Instruments<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Disclosures [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Fair Value of Financial Instruments</div></td> </tr>  </table> <div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"><div style="display: inline; color: windowtext">The Company has financial instruments, such as accounts receivable, accounts payable, and accrued expenses, which are stated at carrying amounts that approximate fair value because of the short maturity of those instruments. The carrying amount of the Company&#x2019;s long-term debt approximates fair value as the interest rate on the debt approximates the estimated borrowing rate currently available to the Company</div>.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -URI http://asc.fasb.org/topic&amp;trid=2155941<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6904463744">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Share-based Compensation<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Disclosure of Compensation Related Costs, Share-based Payments [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 0"></td> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">4</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Share-Based Compensation</div></td> </tr>  </table> <div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">Share-based compensation is measured at the grant date based on the fair value of the award and is recognized as an expense over the requisite service period (generally the vesting period of the equity grant).</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The Company issues share-based awards through several plans that are described in detail in the notes to the consolidated financial statements for the year ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December 31, 2016. </div>The compensation cost charged against income for those plans is included in selling, general &amp; administrative expenses as follows (in thousands):</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></div> <!-- Field: Page; Sequence: 7; Value: 3 -->   <!-- Field: /Page --> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 27.9pt 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 27.9pt 0pt 27pt; font-size: 10pt"></div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom"> <td style="font-size: 10pt; color: #8497B0; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended<br /> September 30,</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br /> September 30,</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid">Share-based compensation related to:</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; font-size: 10pt; text-align: left">Common stock granted to the Board of Directors</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">105</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">105</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Common stock granted to the Chief Executive Officer</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">300</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">300</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Stock options granted to directors</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">105</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">105</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Stock options granted to employees</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">4</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">34</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">25</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">107</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Restricted Stock Unit awards to employees</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">102</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">95</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">307</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">254</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt">Total share-based compensation</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">206</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">229</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">842</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">871</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr>  </table> </div> <div style=" margin: 0pt 27.9pt 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt; text-align: center"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The total income tax benefit recognized in the condensed consolidated statements of income for share-based compensation arrangements was approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$106,000</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$67,000,</div> respectively, for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>-month periods ended <div style="display: inline; color: windowtext"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016,</div> and approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$441,000</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$264,000,</div> respectively, for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div></div>.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The following is a summary of stock option activity under all plans for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>-month period ended <div style="display: inline; color: windowtext"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017</div></div>:</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Shares Under</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Options</div></div></td> <td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Weighted Average Exercise Price</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">(per share)</div></div></td> <td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Weighted Average Remaining</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Contractual Life</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">(in years)</div></div></td> <td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Aggregate Intrinsic Value</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">(in thousands)</div></div></td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; font-size: 10pt">Outstanding at December 31, 2016</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">232,578</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16.53</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-decoration: line-through">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-decoration: line-through; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Granted</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">12,336</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">27.05</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Exercised</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(51,285</div></td> <td style="font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">26.88</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Expired</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right; border-bottom: Black 1pt solid"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(3,750</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">18.85</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Outstanding at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">189,879</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">17.41</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3.55</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,029</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Exercisable at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">184,879</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">17.23</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3.60</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,011</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt">Vested and expected to vest at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">189,879</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">17.41</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3.55</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,029</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr>  </table> </div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">On <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> June 6, 2017, </div>the Company granted options to its directors for the purchase of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">12,336</div> shares of common stock at that day&#x2019;s closing price of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$27.05.</div> The compensation expense related to these grants was determined as the fair value of the options using the Black Scholes option pricing model based on the following assumptions:</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; font-size: 10pt; text-align: left">Expected volatility</td> <td style="width: 2%; font-size: 10pt">&nbsp;</td> <td style="width: 2%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 21%; font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">29.1%</div></td> <td style="width: 1%; font-size: 10pt; text-align: left"></td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Expected dividends</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">None</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Risk-free interest rate</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1.84%</div></td> <td style="font-size: 10pt; text-align: left"></td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Exercise price</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left"></td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$27.05</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Expected term (in years)</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5.8 </div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Weighted-average grant date fair value</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left"></td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$8.51</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr>  </table> </div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The stock volatility for each grant is determined based on a review of the experience of the weighted average of historical daily price changes of the Company&#x2019;s common stock over the expected option term, and the risk-free interest rate is based on the U.S. Treasury yield curve in effect at the time of grant for periods corresponding with the expected term of the option. The expected term is estimated based on historical option exercise activity.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">During the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; color: windowtext"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div></div>, the total intrinsic value of all options exercised (i.e., the difference between the market price on the exercise date and the price paid by the employees to exercise the options) was approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$577,000</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$564,000,</div> respectively, and the total amount of consideration received by the Company from the exercised options was approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$802,000</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$529,000,</div> respectively. At its discretion, the Company allows option holders to surrender previously owned common stock in lieu of paying the exercise price and withholding taxes. During the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month period ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>there were <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6,511</div> shares <div style="display: inline; color: windowtext">surrendered at an average market price of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$26.45.</div></div> During the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month period ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2016 </div>there were <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">no</div> shares surrendered for this purpose.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div>      <!-- Field: /Page --> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">On <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> February 2</div><div style="display: inline; color: black"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1,</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2017,</div> the Company&#x2019;s Compensation Committee approved the award of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$400,000,</div> payable in shares of common stock to the Company&#x2019;s Chairman, Chief Executive Officer, and President under the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2003</div> </div><div style="display: inline; color: windowtext">Incentive Plan. The shares will be issued in <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December, 2017. </div></div></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The following table summarizes information about Restricted Stock Units (&#x201c;RSUs&#x201d;) activity during the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month period ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017:</div></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Restricted<br /> Stock Units</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; padding-bottom: 1pt; border-bottom: Black 1pt solid">Weighted Average<br /> Award Date<br /> Fair Value</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 70%; font-size: 10pt">Unvested at December 31, 2016</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">46,558</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">20.05</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Awarded</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">22,770</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">24.70</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Shares vested</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(13,419</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">23.54</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Unvested at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">55,909</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left">$</td> <td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">20.96</div></td> <td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left">&nbsp;</td> </tr>  </table> </div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">At the Company&#x2019;s discretion, RSU holders are given the option to net-share settle to cover the required minimum withholding tax, and the remaining amount is converted into the equivalent number of common shares. During the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016,</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">4,377</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3,889</div> shares were surrendered at an average market price of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$24.50</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$22.82,</div> respectively.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"><div style="display: inline; color: windowtext">As of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017, </div>the Company had approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$754,000</div> of unrecognized compensation expense, which is expected to be recognized over a period of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3.5</div> years</div>.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for compensation-related costs for equity-based compensation, which may include disclosure of policies, compensation plan details, allocation of equity compensation, incentive distributions, equity-based arrangements to obtain goods and services, deferred compensation arrangements, employee stock ownership plan details and employee stock purchase plan details.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI http://asc.fasb.org/topic&amp;trid=2228938<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 50<br> -URI http://asc.fasb.org/subtopic&amp;trid=2208855<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758858736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Inventories<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventory Disclosure [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Inventories</div></td> </tr>  </table> <div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">Inventories are stated at the lower of cost (<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">first</div>-in, <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">first</div>-out) or net realizable value, and consist of the following at the stated dates (in thousands):</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,<br /> 2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0">December 31,</div> <div style=" margin-top: 0; margin-bottom: 0">2016</div></td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 70%; font-size: 10pt; text-align: left">Raw materials</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6,660</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,111</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Work in process</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1,161</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1,354</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Finished goods</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5,315</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5,686</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt">Total inventory</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">13,136</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14,151</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr>  </table> </div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6901576064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Preferred Stock<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Stockholders' Equity Note Disclosure [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 0"></td> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Preferred Stock</div></td> </tr>  </table> <div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">On <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> March 18, 2009, </div>the Company declared a dividend of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">one</div> preferred share purchase right (a &#x201c;Right&#x201d;) for each outstanding share of common stock, par value <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$0.01</div> per share, to the stockholders of record on <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> March&nbsp;</div><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">20,</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2009.</div> Each Right entitles the registered holder to purchase from the Company <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">one one</div>-thousandth of a share of Series A Junior Participating Preferred Stock, par value <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$0.01</div> per share (the &#x201c;Preferred Share&#x201d;) of the Company, at a price of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$25</div> per <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">one one</div>-thousandth of a Preferred Share subject to adjustment and the terms of the Rights Agreement. The Rights expire on <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> March 19, 2019.</div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI http://asc.fasb.org/topic&amp;trid=2208762<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6606232112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Per Share<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings Per Share [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Income Per Share</div></td> </tr>  </table> <div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">Basic income per share is based on the weighted average number of shares of common stock outstanding. Diluted income per share is based upon the weighted average number of common shares outstanding and dilutive common stock equivalent shares outstanding during each period.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div>  <!-- Field: /Page --> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The weighted average number of shares used to compute basic and diluted net income per share consisted of the following (in thousands):</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center; padding-bottom: 1pt">&nbsp;<br /> &nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;<br /> &nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended<br /> September 30,</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;<br /> &nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br /> September 30,</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; font-size: 10pt">Weighted average common shares outstanding, basic</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,264</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,195</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,240</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,183</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Weighted average common equivalent shares due to stock options and RSUs</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">89</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">87</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">86</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">82</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Weighted average common shares outstanding, diluted</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,353</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,282</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,326</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,265</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr>  </table> </div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The computation of diluted earnings per share excludes the effect of the potential exercise of stock awards, including stock options, when the average market price of the common stock is lower than the exercise price of the related options during the period. These outstanding stock awards are <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> included in the computation of diluted income per share because the effect would be antidilutive. For the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; color: windowtext"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017</div></div>, the number of stock awards excluded from the computation of diluted earnings per share for this reason was <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">zero</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">27,336,</div> respectively. For the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; color: windowtext"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2016</div></div>, the number of stock awards excluded from the computation of diluted earnings per share for this reason was <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">35,193</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">52,377,</div> respectively.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6902133744">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Segment Reporting<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Segment Reporting Disclosure [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">8</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Segment Reporting</div></td> </tr>  </table> <div style=" margin-top: 0pt; margin-bottom: 0pt; font-size: 10pt">&nbsp;</div> <div style=" font-size: 10pt; margin: 0pt 0 0pt 27pt; text-indent: 0in">The Company consists of a single operating and reportable segment.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">Revenues from customers outside of the United States are <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> material. <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No</div> customer comprised more than <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">10%</div> of the Company&#x2019;s consolidated revenues for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017. </div>All of the Company&#x2019;s assets are located in the United States.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"><div style="display: inline; color: windowtext">The Company&#x2019;s products are primarily sold to customers within the Medical, Consumer, Automotive, Aerospace and Defense, Industrial and Electronics markets. Net sales by market for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016,</div> respectively, are as follows (in thousands)</div>:</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended September 30,</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended September 30,</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Market</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 20%; font-size: 10pt">Medical</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16,712</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">46.8</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">%</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16,548</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">44.5</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">%</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">52,822</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">47.7</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">%</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">48,953</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">44.7</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt">Consumer</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6,006</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16.8</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5,648</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">15.2</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">15,713</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14.2</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">15,303</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14.0</div></td> <td style="font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">Automotive</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5,174</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14.5</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6,942</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">18.7</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">18,018</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16.3</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">20,485</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">18.7</div></td> <td style="font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Aerospace &amp; Defense</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,682</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.5</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,516</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6.8</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">8,290</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.5</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,929</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.2</div></td> <td style="font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">Industrial</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,591</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.3</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,792</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.5</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,629</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6.9</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">8,441</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.7</div></td> <td style="font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 1pt">Electronics</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,519</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.1</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,774</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.5</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">8,151</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.4</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">8,515</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.8</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt">Net Sales</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">35,684</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100.0</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">37,220</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100.0</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">110,623</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100.0</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">109,626</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100.0</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td> </tr>  </table> </div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">Certain amounts for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2016 </div>were reclassified between markets to conform to the current period presentation.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI http://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758858736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Other Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">Intangible Assets Disclosure [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 0"></td> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">9</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Other Intangible Assets</div></td> </tr>  </table> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">The carrying values of the Company&#x2019;s definite lived intangible assets as of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December&nbsp;</div><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">31,</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016,</div> are as follows (in thousands):</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Patents</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Non-<br /> Compete</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Customer<br /> List</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Total</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">Estimated useful life (in years)</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="width: 40%; font-size: 10pt">Gross amount at September 30, 2017</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">429</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">512</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,046</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,987</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; padding-bottom: 1pt">Accumulated amortization at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(429</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(496</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(1,983</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(2,908</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Net balance at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">63</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">79</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Estimated useful life (in years)</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5 </div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">Gross amount at December 31, 2016</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">429</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">512</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,046</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,987</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 1pt">Accumulated amortization at December 31, 2016</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(429</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(449</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(1,791</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(2,669</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Net balance at December 31, 2016</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">63</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">255</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">318</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr>  </table> </div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">Amortization expense related to intangible assets was approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$79,000</div></div> for each of the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016,</div> and was approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$239,000</div></div> for each of the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016.</div> As of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017, </div>the estimated remaining amortization expense for <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2017</div> is <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$79,000.</div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all or part of the information related to intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI http://asc.fasb.org/topic&amp;trid=2144416<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6907132048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Income Taxes<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Tax Disclosure [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">10</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Income Taxes</div></td> </tr>  </table> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">The income tax expense included in the accompanying unaudited condensed consolidated statements of income principally relates to the Company&#x2019;s proportionate share of the pre-tax income of its wholly-owned subsidiaries. The determination of income tax expense for interim reporting purposes is based upon the estimated effective tax rate for the year, adjusted for the impact of any discrete items which are accounted for in the period in which they occur.</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">The Company recorded tax expense of approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">33.6%</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">35.0%</div> of income before income tax expense, respectively, for each of the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016.</div> The decrease in the effective tax rate for the current period is due to a tax benefit of approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$37,000</div> recorded in the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>-month period ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>as a result of the adoption of ASU <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">09</div> on <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> January 1, 2017 (</div>See Note <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1</div>). The Company recorded a tax expense of approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">33.3%</div> and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">35.4%</div> of income before income tax expense for each of the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016.</div> The decrease in the effective tax rate for the current period is due to a tax benefit of approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$162,000</div> recorded in the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month period ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>as a result of the adoption of ASU <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">09</div> on <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> January 1, 2017 (</div>See Note <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1</div>); and a tax assessment of approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$40,000</div> from <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">one</div> jurisdiction recorded in the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">first</div> quarter of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016.</div> The Company notes the potential for volatility in its effective tax rate, as any windfall or shortfall tax benefits related to its share-based compensation plans will be recorded directly into income tax expense.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758786864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Plant Consolidations<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_ufpt_PlantConsolidationDisclosureTextBlock', window );">Plant Consolidation Disclosure [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">11</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Plant Consolidations</div></td> </tr>  </table> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"><div style="display: inline; font-style: italic;">Restructuring Costs</div></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">On <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> March 18, 2015, </div>the Company committed to move forward with a plan to cease operations at its Raritan, New Jersey, plant and consolidate operations into its Newburyport, Massachusetts, facility and other UFP facilities. The Company&#x2019;s decision was in response to a continued decline in business at the Raritan facility and the Company&#x2019;s purchase of the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">137,000</div>-square-foot facility in Newburyport. The activities related to this consolidation are complete.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The Company also relocated all operations in its Haverhill, Massachusetts, and Byfield, Massachusetts, facilities and relocated certain operations in its Georgetown, Massachusetts, facility to Newburyport. The Haverhill and Byfield relocations were complete at <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December 31, 2015, </div>and the partial Georgetown relocation was complete at <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> June 30, 2017.</div></div> <div style=" margin: 0pt 0; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The Company incurred approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$2.1</div> million in <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">one</div>-time expenses in connection with the Massachusetts consolidations. Included in this amount are approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$180,000</div> relating to employee severance payments and relocation costs, approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$1.6</div> million in moving expenses and expenses associated with vacating the Raritan, Haverhill, and Byfield properties, and approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$360,000</div> in lease termination costs. Total cash charges were approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$2.0</div> million.</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div>  <!-- Field: /Page --> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">The Company recorded the following restructuring costs associated with the Massachusetts consolidations for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div> (in thousands):</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-width: 700px;">  <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center">Three Months Ended</td> <td style="font-size: 10pt; font-weight: bold">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center">Nine Months Ended</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid">Restructuring Costs</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; font-size: 10pt; padding-bottom: 1pt">Relocation</td> <td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">25</div></td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">63</div></td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">203</div></td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Total</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">25</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">63</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">203</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr>  </table> </div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">Costs for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>- month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div> were reclassified in the Condensed Consolidated Statement of Income as &#x201c;Restructuring Costs&#x201d; from Cost of Sales.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ufpt_PlantConsolidationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for plant consolidation consisting of restructuring and consolidation of plant facilities of the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ufpt_PlantConsolidationDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ufpt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6907782752">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Related Party Transactions<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock', window );">Related Party Transactions Disclosure [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 0"></td> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">12</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Related Party Transactions</div></td> </tr>  </table> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"></div> <div style=" margin: 0pt 0; font-size: 10pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt">Daniel Croteau, who has been a member of the Company&#x2019;s board of directors since <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December 16, 2015, </div>was the Chief Executive Officer (through <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> March 2017) </div>of Vention Medical, Inc. (&#x201c;Vention&#x201d;), a customer of the Company. Sales to Vention for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>-months ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> March 31, 2017 </div>were approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$148,000.</div> As a result of the sale of Vention, Mr. Croteau&#x2019;s employment ended in <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> March 2017 </div>and sales to Vention are <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">no</div> longer considered related party transactions.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -URI http://asc.fasb.org/topic&amp;trid=2122745<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758921248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Material Overcharge Settlement<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LegalMattersAndContingenciesTextBlock', window );">Legal Matters and Contingencies [Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="; font-size: 10pt; margin-top: 0pt; margin-bottom: 0pt; min-width: 700px;">  <tr style="vertical-align: top"> <td style="width: 0"></td> <td style="width: 27pt"><div style="display: inline; font-weight: bold;">(<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">13</div>)</div></td> <td><div style="display: inline; font-weight: bold;">Material Overcharge Settlement</div></td> </tr>  </table> <div style=" margin: 0pt 0; font-size: 10pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">The Company was a participant in a class action lawsuit against a number of polyurethane foam suppliers (&#x201c;Defendants&#x201d;) that was settled during the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">second</div> quarter of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016.</div> The suit was filed to recover damages and obtain injunctive relief for Defendants&#x2019; alleged violations of the federal antitrust laws with respect to the fixing of prices of polyurethane foam sold from <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> January 1, 1999 </div>through <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> August 2010. </div>During the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017, </div>the Company received settlement amounts of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$0</div> and approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$121,000,</div> respectively. During the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2016, </div>the Company received settlement amounts of approximately <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$1.7</div> million and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$2.1</div> million, respectively. The settlement amounts for the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">three</div>- and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">nine</div>-month periods ended <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> September 30, 2017 </div>and <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div> are recorded as &#x201c;Material overcharge settlement&#x201d; in the operating income section of the Condensed Consolidated Statements of Income.</div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LegalMattersAndContingenciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for legal proceedings, legal contingencies, litigation, regulatory and environmental matters and other contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI http://asc.fasb.org/topic&amp;trid=2127136<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LegalMattersAndContingenciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762324288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">New Accounting Pronouncements, Policy [Policy Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><div style="display: inline; font-family: times new roman; font-size: 10pt"><div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"><div style="display: inline; font-style: italic;">Recent Accounting Pronouncements</div></div> <div style=" margin: 0pt 0 0pt 27pt; font-size: 10pt"><div style="display: inline; font-style: italic;">&nbsp;</div></div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">In <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> May 2014, </div>the Financial Accounting Standards Board (FASB) issued Accounting Standards Update (ASU) <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2014</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">09,</div> <div style="display: inline; font-style: italic;">Revenue from Contracts with Customers</div>, which requires an entity to recognize the amount of revenue to which it expects to be entitled for the transfer of promised goods or services to customers. This standard will replace most existing revenue recognition guidance when it becomes effective. The standard permits the use of either the full retrospective or modified retrospective transition methods. The Company expects to adopt the standard in the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">first</div> quarter of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2018</div> using the modified retrospective transition method. The Company has identified its primary revenue streams, completed a preliminary review of a representative sample of contracts with its customers and is in the process of evaluating the impact of this ASU on its revenue streams and accounting policies. Based on the procedures completed to date, the Company expects that for a significant portion of its business, the recognition of revenue under the updated standard will occur at a point in time, which is consistent with current practice. The Company has identified certain revenue streams for which the recognition of revenue <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> may </div>occur over time, which is a change from current practice. These revenue streams include certain customer stocking commitments. Additionally, the Company has identified certain revenue streams for which the recognition of revenue <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> may </div>be deferred, which is also a change from current practice. These revenue streams include certain tooling sales. The Company does <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> expect that the impact of these changes in the timing of revenue recognition for these items to be significant to the financial statements. The Company is also in the process of updating its internal controls and drafting the expanded disclosures as required by this ASU. <div style="display: inline; color: windowtext">The Company does <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> expect significant changes to its systems or internal controls. As the Company continues thr</div>ough the adoption process, it is possible that these preliminary conclusions <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> may </div>change.</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">In <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> February 2016, </div>the FASB issued ASU <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div>&nbsp;<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">02,</div> <div style="display: inline; font-style: italic;">Leases.</div> The guidance in this ASU supersedes the leasing guidance in Topic <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">840,</div> <div style="display: inline; font-style: italic;">Leases</div>. Under the new guidance, lessees are required to recognize lease assets and lease liabilities on the balance sheet for those leases previously classified as operating leases. The amendments in ASU <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div>&nbsp;<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">02</div> are effective for annual reporting periods beginning after <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> December&nbsp;</div><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">15,</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2018,</div> including interim periods within that reporting period with early adoption permitted. The Company is evaluating the impact of adopting this ASU on its consolidated financial position and results of operations.</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">In <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> March 2016, </div>the FASB issued ASU <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">No.</div> <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div>-<div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">09,</div> <div style="display: inline; font-style: italic;">Improvements to Employee Share Based Payment Accounting</div>. This ASU simplifies several aspects of the accounting for share-based payment transactions, including income tax consequences, classification of awards, forfeitures and classification on the statement of cash flows. The Company adopted this ASU on <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;"> January 1, 2017. </div>As the Company has <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">not</div> had a significant amount of forfeitures historically, under the provisions of this ASU the Company has elected to account for forfeitures as they occur, rather than estimate expected forfeitures. The impact of adopting this update to the Company&#x2019;s Consolidated Financial Statements will depend on market factors and the timing and intrinsic value of future share-based compensation award vests and exercises. Subsequent to adoption, the Company notes the potential for volatility in its effective tax rate as any windfall or shortfall tax benefits related to its share-based compensation plans will be recorded directly to income tax expense in the Condensed Consolidated Statement of Income.</div></div></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_ufpt_RevisionsPolicyPolicyTextBlock', window );">Revisions Policy [Policy Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><div style="display: inline; font-family: times new roman; font-size: 10pt"><!-- Field: /Page --> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"></div><div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt"><div style="display: inline; font-style: italic;">Revisions</div></div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">&nbsp;</div> <div style=" margin: 0pt 0 0pt 27.35pt; font-size: 10pt">Certain revisions have been made to the <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2016</div> Condensed Consolidated Statement of Cash Flows to conform to the current year presentation relating to a reserve for uncertain tax positions and to cash paid for capital expenditures. The reclassification of a reserve for uncertain tax positions resulted in an increase to the change in refundable income taxes of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$315,000</div> and a decrease to the change in accrued expenses of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$315,000.</div> A change in presentation of cash paid for capital expenditures resulted in a decrease of <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$311,000</div> in both the change in accounts payable and in additions to property, plant and equipment, net. These revisions had <div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">no</div> impact on previously reported net income and are deemed immaterial to the previously issued financial statements.</div></div></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ufpt_RevisionsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revisions to financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ufpt_RevisionsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ufpt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758874144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Supplemental Cash Flow Information (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock', window );">Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br /> September 30</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-style: italic; text-align: right">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-style: italic; text-align: right">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; text-align: center">(in thousands)</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Cash paid for:</td> <td style="font-size: 10pt; font-weight: bold">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: right">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: right">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="width: 70%; font-size: 10pt; padding-left: 10pt">Interest</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">37</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">51</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Income taxes, net of refunds</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3,167</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,178</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-left: 0pt">Non-cash investing and financing activities:</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-left: 10pt">Capital additions accrued but not yet paid</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">527</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">311</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of supplemental cash flow information for the periods presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6901634832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Share-based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; color: #8497B0; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended<br /> September 30,</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br /> September 30,</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid">Share-based compensation related to:</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; font-size: 10pt; text-align: left">Common stock granted to the Board of Directors</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">105</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">105</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Common stock granted to the Chief Executive Officer</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">300</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">300</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Stock options granted to directors</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">105</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">105</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Stock options granted to employees</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">4</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">34</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">25</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">107</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Restricted Stock Unit awards to employees</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">102</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">95</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">307</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">254</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt">Total share-based compensation</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">206</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">229</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">842</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">871</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> </table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Share-based Compensation, Stock Options, Activity [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Shares Under</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Options</div></div></td> <td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Weighted Average Exercise Price</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">(per share)</div></div></td> <td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Weighted Average Remaining</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Contractual Life</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">(in years)</div></div></td> <td style="font-size: 10pt; font-weight: normal; font-style: normal; padding-bottom: 1pt"><div style="display: inline; font-weight: bold;">&nbsp;</div></td> <td colspan="3" style="font-size: 10pt; font-weight: normal; font-style: normal; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">Aggregate Intrinsic Value</div></div> <div style=" margin-top: 0; margin-bottom: 0"><div style="display: inline; font-weight: bold;">(in thousands)</div></div></td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; font-size: 10pt">Outstanding at December 31, 2016</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">232,578</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16.53</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-decoration: line-through">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-decoration: line-through; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="width: 1%; font-size: 10pt; text-decoration: line-through; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Granted</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">12,336</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">27.05</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Exercised</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(51,285</div></td> <td style="font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">26.88</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Expired</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right; border-bottom: Black 1pt solid"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(3,750</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left; border-bottom: Black 1pt solid">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">18.85</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Outstanding at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">189,879</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">17.41</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3.55</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,029</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Exercisable at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">184,879</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">17.23</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3.60</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,011</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt">Vested and expected to vest at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">189,879</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">17.41</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">3.55</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,029</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> </table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 74%; font-size: 10pt; text-align: left">Expected volatility</td> <td style="width: 2%; font-size: 10pt">&nbsp;</td> <td style="width: 2%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 21%; font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">29.1%</div></td> <td style="width: 1%; font-size: 10pt; text-align: left"></td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Expected dividends</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">None</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Risk-free interest rate</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1.84%</div></td> <td style="font-size: 10pt; text-align: left"></td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Exercise price</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left"></td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$27.05</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left">Expected term (in years)</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5.8 </div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Weighted-average grant date fair value</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left"></td> <td style="font-size: 10pt; text-align: left"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">$8.51</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> </table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Schedule of Share-based Compensation, Restricted Stock Units Award Activity [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Restricted<br /> Stock Units</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; padding-bottom: 1pt; border-bottom: Black 1pt solid">Weighted Average<br /> Award Date<br /> Fair Value</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 70%; font-size: 10pt">Unvested at December 31, 2016</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">46,558</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">20.05</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Awarded</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">22,770</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">24.70</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Shares vested</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(13,419</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">23.54</div></td> <td style="padding-bottom: 1pt; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Unvested at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">55,909</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left">$</td> <td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">20.96</div></td> <td style="padding-bottom: 2.25pt; font-size: 10pt; text-align: left">&nbsp;</td> </tr> </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the allocation of equity-based compensation costs to a given line item on the balance sheet and income statement for the period. This may include the reporting line for the costs and the amount capitalized and expensed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5047-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=27013229&amp;loc=d3e301413-122809<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758737392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventory, Current [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,<br /> 2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid"><div style=" margin-top: 0; margin-bottom: 0">December 31,</div> <div style=" margin-top: 0; margin-bottom: 0">2016</div></td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 70%; font-size: 10pt; text-align: left">Raw materials</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6,660</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,111</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Work in process</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1,161</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">1,354</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Finished goods</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5,315</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5,686</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt">Total inventory</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">13,136</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14,151</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6907610016">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Per Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock', window );">Schedule of Weighted Average Number of Shares [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center; padding-bottom: 1pt">&nbsp;<br /> &nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;<br /> &nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended<br /> September 30,</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;<br /> &nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended<br /> September 30,</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; font-size: 10pt">Weighted average common shares outstanding, basic</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,264</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,195</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,240</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,183</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left; padding-bottom: 1pt">Weighted average common equivalent shares due to stock options and RSUs</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">89</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">87</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">86</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">82</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Weighted average common shares outstanding, diluted</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,353</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,282</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,326</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,265</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the weighted average number of shares used in calculating basic net earnings per share (or unit) and diluted earnings per share (or unit).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6757198144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Segment Reporting (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock', window );">Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Three Months Ended September 30,</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="15" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Nine Months Ended September 30,</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Market</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Net Sales</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">%</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 20%; font-size: 10pt">Medical</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16,712</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">46.8</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">%</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16,548</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">44.5</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">%</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">52,822</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">47.7</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">%</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">48,953</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 7%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">44.7</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt">Consumer</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6,006</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16.8</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5,648</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">15.2</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">15,713</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14.2</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">15,303</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14.0</div></td> <td style="font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">Automotive</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5,174</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14.5</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6,942</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">18.7</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">18,018</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16.3</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">20,485</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">18.7</div></td> <td style="font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Aerospace &amp; Defense</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,682</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.5</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,516</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6.8</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">8,290</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.5</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,929</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.2</div></td> <td style="font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">Industrial</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,591</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.3</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,792</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.5</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7,629</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">6.9</div></td> <td style="font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">8,441</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.7</div></td> <td style="font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 1pt">Electronics</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,519</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.1</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,774</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.5</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">8,151</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.4</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">8,515</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 1pt; border-bottom: Black 1pt solid">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">7.8</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">%</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; text-align: left; padding-bottom: 2.25pt; padding-left: 10pt">Net Sales</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">35,684</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100.0</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">37,220</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100.0</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">110,623</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100.0</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">109,626</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt; border-bottom: Black 2.5pt double">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">100.0</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">%</td> </tr> </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the extent of the entity's reliance on its major customers, if revenues from transactions with a single external customer amount to 10 percent or more of entity revenues, including the disclosure of that fact, the total amount of revenues from each such customer, and the identity of the reportable segment or segments reporting the revenues. The entity need not disclose the identity of a major customer or the amount of revenues that each segment reports from that customer. For these purposes, a group of companies known to the entity to be under common control is considered a single customer, and the federal government, a state government, a local government such as a county or municipality, or a foreign government is each considered a single customer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758755488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Other Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Finite-Lived Intangible Assets [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Patents</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Non-<br /> Compete</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Customer<br /> List</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">Total</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">Estimated useful life (in years)</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="width: 40%; font-size: 10pt">Gross amount at September 30, 2017</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">429</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">512</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,046</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt">&nbsp;</td> <td style="width: 1%; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,987</div></td> <td style="width: 1%; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; padding-bottom: 1pt">Accumulated amortization at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(429</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(496</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(1,983</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(2,908</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Net balance at September 30, 2017</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">16</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">63</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">79</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; text-align: left">Estimated useful life (in years)</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">14</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">5 </div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">&nbsp;</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt">Gross amount at December 31, 2016</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">429</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">512</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,046</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt">&nbsp;</td> <td style="font-size: 10pt; text-align: left">$</td> <td style="font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">2,987</div></td> <td style="font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 1pt">Accumulated amortization at December 31, 2016</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(429</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(449</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(1,791</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> <td style="font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">(2,669</div></td> <td style="border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">)</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Net balance at December 31, 2016</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">63</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">255</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">318</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6702132768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Plant Consolidations (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2017</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock', window );">Restructuring and Related Costs [Table Text Block]</a></td>
<td class="text"><div style="display: inline; font-family: times new roman; font-size: 10pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; margin: 0pt 0pt 0pt 27pt; min-; min-width: 700px;"> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center">Three Months Ended</td> <td style="font-size: 10pt; font-weight: bold">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center">Nine Months Ended</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; text-align: center">&nbsp;</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="7" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">September 30,</td> </tr> <tr style="vertical-align: bottom"> <td style="font-size: 10pt; font-weight: bold; border-bottom: Black 1pt solid">Restructuring Costs</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2017</td> <td style="font-size: 10pt; font-weight: bold; padding-bottom: 1pt">&nbsp;</td> <td colspan="3" style="font-size: 10pt; font-weight: bold; text-align: center; border-bottom: Black 1pt solid">2016</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 40%; font-size: 10pt; padding-bottom: 1pt">Relocation</td> <td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">25</div></td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">63</div></td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> <td style="width: 1%; font-size: 10pt; padding-bottom: 1pt">&nbsp;</td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">$</td> <td style="width: 12%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">203</div></td> <td style="width: 1%; border-bottom: Black 1pt solid; font-size: 10pt; text-align: left">&nbsp;</td> </tr> <tr style="vertical-align: bottom; background-color: White"> <td style="font-size: 10pt; padding-bottom: 2.25pt">Total</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">-</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">25</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">63</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> <td style="font-size: 10pt; padding-bottom: 2.25pt">&nbsp;</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">$</td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: right"><div style="display: inline; font-style: italic; font-weight: inherit; font-style: normal;">203</div></td> <td style="border-bottom: Black 2.25pt double; font-size: 10pt; text-align: left">&nbsp;</td> </tr> </table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of costs incurred for restructuring including, but not limited to, exit and disposal activities, remediation, implementation, integration, asset impairment, and charges against earnings from the write-down of assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.P.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140904-122747<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 5.P.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140864-122747<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6918717632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Basis of Presentation (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable', window );">Increase (Decrease) in Income Taxes Receivable</a></td>
<td class="nump">$ 172,000<span></span>
</td>
<td class="num">$ (1,146,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Increase (Decrease) in Accrued Liabilities</a></td>
<td class="nump">658,000<span></span>
</td>
<td class="num">(317,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Payments to Acquire Property, Plant, and Equipment</a></td>
<td class="nump">$ 6,880,000<span></span>
</td>
<td class="nump">5,766,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementScenarioAxis=us-gaap_RestatementAdjustmentMember', window );">Restatement Adjustment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable', window );">Increase (Decrease) in Income Taxes Receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">315,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Increase (Decrease) in Accrued Liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(315,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Payments to Acquire Property, Plant, and Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (311,000)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInIncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementScenarioAxis=us-gaap_RestatementAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementScenarioAxis=us-gaap_RestatementAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6757254464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Cash paid for:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest</a></td>
<td class="nump">$ 37<span></span>
</td>
<td class="nump">$ 51<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income taxes, net of refunds</a></td>
<td class="nump">3,167<span></span>
</td>
<td class="nump">2,178<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>Non-cash investing and financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalExpendituresIncurredButNotYetPaid', window );">Capital additions accrued but not yet paid</a></td>
<td class="nump">$ 527<span></span>
</td>
<td class="nump">$ 311<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalExpendituresIncurredButNotYetPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Future cash outflow to pay for purchases of fixed assets that have occurred.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4332-108586<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4313-108586<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4304-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalExpendituresIncurredButNotYetPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid, after deduction of cash paid for capitalized interest, for interest. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6768261936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Share-based Compensation (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 06, 2017</div></th>
<th class="th"><div>Feb. 21, 2017</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense', window );">Employee Service Share-based Compensation, Tax Benefit from Compensation Expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 106,000<span></span>
</td>
<td class="nump">$ 67,000<span></span>
</td>
<td class="nump">$ 441,000<span></span>
</td>
<td class="nump">$ 264,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross</a></td>
<td class="nump">12,336<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,336<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</a></td>
<td class="nump">$ 27.05<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 27.05<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 577,000<span></span>
</td>
<td class="nump">564,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from Stock Options Exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 802,000<span></span>
</td>
<td class="nump">$ 529,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation', window );">Shares Paid for Exercise Price and Tax Withholding for Share Based Compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,511<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice', window );">Shares Paid for Exercise Price and Tax Withholding for Share-based Compensation, Average Market Price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 26.45<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 754,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 754,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years 182 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Shares Paid for Tax Withholding for Share Based Compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,377<span></span>
</td>
<td class="nump">3,889<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice', window );">Shares Paid for Tax Withholding for Share Based Compensation Market Price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 24.50<span></span>
</td>
<td class="nump">$ 22.82<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PlanNameAxis=ufpt_The2003IncentivePlanMember', window );">The 2003 Incentive Plan [Member] | Chairman Chief Executive Officer and President [Member] | Common Stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the number of shares the employees use to repay the employer for the exercise price and income tax withholding obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ufpt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the average price per share used by the employees to repay the employer for the exercise price and income tax withholding obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ufpt_SharesPaidForExercisePriceAndTaxWithholdingForShareBasedCompensationAverageMarketPrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ufpt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For net-share settlement of share-based awards when the employer settles employees' income tax withholding obligations, this element represents the market price per share of shares used by the employees to repay the employer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ufpt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Unrecognized cost of unvested share-based compensation awards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average period over which unrecognized compensation is expected to be recognized for equity-based compensation plans, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The total recognized tax benefit related to compensation cost for equity-based payment arrangements recognized in income during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of stock options granted under share-based compensation arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3255-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=SL79508275-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For net-share settlement of share-based awards when the employer settles employees' income tax withholding obligations, this element represents the number of shares the employees use to repay the employer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value of stock (or other type of equity) issued during the period as a result of any equity-based compensation plan other than an employee stock ownership plan (ESOP), net of stock value of such awards forfeited. Stock issued could result from the issuance of restricted stock, the exercise of stock options, stock issued under employee stock purchase plans, and/or other employee benefit plans.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5047-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=ufpt_The2003IncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=ufpt_The2003IncentivePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=ufpt_ChairmanChiefExecutiveOfficerAndPresidentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_CommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6757497424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Share-based Compensation - Allocation of Share-based Compensation (Details) - Selling, General and Administrative Expenses [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based compensation</a></td>
<td class="nump">$ 206<span></span>
</td>
<td class="nump">$ 229<span></span>
</td>
<td class="nump">$ 842<span></span>
</td>
<td class="nump">$ 871<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Director [Member] | Common Stock Issued Under the Equity Incentive Plan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based compensation</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">105<span></span>
</td>
<td class="nump">105<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Director [Member] | Employee Stock Option [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based compensation</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">105<span></span>
</td>
<td class="nump">105<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Chief Executive Officer [Member] | Common Stock Issued Under the Equity Incentive Plan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based compensation</a></td>
<td class="nump">100<span></span>
</td>
<td class="nump">100<span></span>
</td>
<td class="nump">300<span></span>
</td>
<td class="nump">300<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Employees [Member] | Employee Stock Option [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based compensation</a></td>
<td class="nump">4<span></span>
</td>
<td class="nump">34<span></span>
</td>
<td class="nump">25<span></span>
</td>
<td class="nump">107<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Employees [Member] | Restricted Stock Units (RSUs) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based compensation</a></td>
<td class="nump">$ 102<span></span>
</td>
<td class="nump">$ 95<span></span>
</td>
<td class="nump">$ 307<span></span>
</td>
<td class="nump">$ 254<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the expense recognized during the period arising from equity-based compensation arrangements (for example, shares of stock, unit, stock options or other equity instruments) with employees, directors and certain consultants qualifying for treatment as employees.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=27013229&amp;loc=d3e301413-122809<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5047-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TitleOfIndividualAxis=us-gaap_DirectorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TitleOfIndividualAxis=us-gaap_DirectorMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=ufpt_CommonStockIssuedUnderTheEquityIncentivePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TitleOfIndividualAxis=us-gaap_ChiefExecutiveOfficerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TitleOfIndividualAxis=us-gaap_ChiefExecutiveOfficerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TitleOfIndividualAxis=ufpt_EmployeesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TitleOfIndividualAxis=ufpt_EmployeesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6757562080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Share-based Compensation - Stock Option Activity (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 06, 2017</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">232,578<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding, weighted average exercise price (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 16.53<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted (in shares)</a></td>
<td class="nump">12,336<span></span>
</td>
<td class="nump">12,336<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted, weighted average exercise price (in dollars per share)</a></td>
<td class="nump">$ 27.05<span></span>
</td>
<td class="nump">$ 27.05<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(51,285)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised, weighted average exercise price (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 26.88<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod', window );">Expired (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,750)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice', window );">Expired, weighted average exercise price (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 18.85<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">189,879<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding, weighted average exercise price (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 17.41<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding, weighted average remaining contractual life (Year)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years 200 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Outstanding, aggregate intrinsic value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,029<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Exercisable (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">184,879<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable, weighted average exercise price (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 17.23<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable, weighted average remaining contractual life (Year)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years 219 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Exercisable, aggregate intrinsic value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,011<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber', window );">Vested and expected to vest (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">189,879<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice', window );">Vested and expected to vest, weighted average exercise price (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 17.41<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Vested and expected to vest, weighted average remaining contractual life (Year)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years 200 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Vested and expected to vest, aggregate intrinsic value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,029<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest exercisable or convertible options. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159872&amp;loc=d3e21463-112644<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=27012166&amp;loc=d3e187085-122770<br><br>Reference 5: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6900957776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Share-based Compensation - Option Pricing Assumptions (Details)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2017 </div>
<div>$ / shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted-average grant date fair value (in dollars per share)</a></td>
<td class="nump">$ 8.51<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected volatility</a></td>
<td class="nump">29.10%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Expected dividends</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk-free interest rate</a></td>
<td class="nump">1.84%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice', window );">Exercise price (in dollars per share)</a></td>
<td class="nump">$ 27.05<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected term (Year)</a></td>
<td class="text">5 years 292 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Agreed-upon price for the exchange of the underlying asset relating to the share-based payment award.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Expected term of share-based compensation awards, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=27013229&amp;loc=d3e301413-122809<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6900377728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Share-based Compensation - Restricted Stock Unit Activity (Details) - Restricted Stock Units (RSUs) [Member]<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2017 </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Unvested (in shares) | shares</a></td>
<td class="nump">46,558<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Unvested, weighted average award date fair value (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 20.05<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Awarded (in shares) | shares</a></td>
<td class="nump">22,770<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Awarded, weighted average award date fair value (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 24.70<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Shares vested (in shares) | shares</a></td>
<td class="num">(13,419)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Shares vested (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 23.54<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Unvested (in shares) | shares</a></td>
<td class="nump">55,909<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Unvested, weighted average award date fair value (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 20.96<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value of nonvested awards on equity-based plans excluding option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, revenue or profit achievement stock award plan) for which the employer is contingently obligated to issue equity instruments or transfer assets to an employee who has not yet satisfied service or performance criteria necessary to gain title to proceeds from the sale of the award or underlying shares or units.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=96867065&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6768204320">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 5 - Inventories - Summary of Inventory (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Dec. 31, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 6,660<span></span>
</td>
<td class="nump">$ 7,111<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work in process</a></td>
<td class="nump">1,161<span></span>
</td>
<td class="nump">1,354<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">5,315<span></span>
</td>
<td class="nump">5,686<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total inventory</a></td>
<td class="nump">$ 13,136<span></span>
</td>
<td class="nump">$ 14,151<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=68049868&amp;loc=d3e3927-108312<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=82887183&amp;loc=d3e6676-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterialsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcessNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcessNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6768328496">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 6 - Preferred Stock (Details Textual)<br></strong></div></th>
<th class="th">
<div>Mar. 18, 2009 </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Sep. 30, 2017 </div>
<div>$ / shares</div>
</th>
<th class="th">
<div>Dec. 31, 2016 </div>
<div>$ / shares</div>
</th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding', window );">Preferred Stock Dividends Number of Preferred Share Purchase Rights Distributed for each Share of Common Stock Outstanding</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common Stock, Par or Stated Value Per Share</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred Stock, Par or Stated Value Per Share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightAxis=ufpt_PreferredSharePurchaseRightMember', window );">Preferred Share Purchase Right [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Class of Warrant or Right, Exercise Price of Warrants or Rights</a></td>
<td class="nump">$ 25<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight', window );">Class of Warrant or Right, Number of Securities Called by Each Warrant or Right | shares</a></td>
<td class="nump">0.001<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=ufpt_SeriesAJuniorParticipatingPreferredStockMember', window );">Series A Junior Participating Preferred Stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred Stock, Par or Stated Value Per Share</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the number of preferred share purchase rights declared as dividend for each outstanding share of common stock on March, 2009.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ufpt_PreferredStockDividendsNumberOfPreferredSharePurchaseRightsDistributedForEachShareOfCommonStockOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ufpt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Exercise price per share or per unit of warrants or rights outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(i)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of securities into which each warrant or right may be converted. For example, but not limited to, each warrant may be converted into two shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByEachWarrantOrRight</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ClassOfWarrantOrRightAxis=ufpt_PreferredSharePurchaseRightMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightAxis=ufpt_PreferredSharePurchaseRightMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=ufpt_SeriesAJuniorParticipatingPreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=ufpt_SeriesAJuniorParticipatingPreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762227280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Per Share (Details Textual) - shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">35,193<span></span>
</td>
<td class="nump">27,336<span></span>
</td>
<td class="nump">52,377<span></span>
</td>
</tr>
</table>
<div style="display: none;"><table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6648428064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details) - shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average common shares outstanding, basic (in shares)</a></td>
<td class="nump">7,264<span></span>
</td>
<td class="nump">7,195<span></span>
</td>
<td class="nump">7,240<span></span>
</td>
<td class="nump">7,183<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Weighted average common equivalent shares due to stock options and RSUs (in shares)</a></td>
<td class="nump">89<span></span>
</td>
<td class="nump">87<span></span>
</td>
<td class="nump">86<span></span>
</td>
<td class="nump">82<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average common shares outstanding, diluted (in shares)</a></td>
<td class="nump">7,353<span></span>
</td>
<td class="nump">7,282<span></span>
</td>
<td class="nump">7,326<span></span>
</td>
<td class="nump">7,265<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28A<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1500-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1505-109256<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=96947427&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6768830336">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Segment Reporting - Net Sales by Market (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Net sales</a></td>
<td class="nump">$ 35,684<span></span>
</td>
<td class="nump">$ 37,220<span></span>
</td>
<td class="nump">$ 110,623<span></span>
</td>
<td class="nump">$ 109,626<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Sales Revenue, Net [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Percentage of concentration risk</a></td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_MedicalMember', window );">Medical [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Net sales</a></td>
<td class="nump">$ 16,712<span></span>
</td>
<td class="nump">$ 16,548<span></span>
</td>
<td class="nump">$ 52,822<span></span>
</td>
<td class="nump">$ 48,953<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_MedicalMember', window );">Medical [Member] | Sales Revenue, Net [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Percentage of concentration risk</a></td>
<td class="nump">46.80%<span></span>
</td>
<td class="nump">44.50%<span></span>
</td>
<td class="nump">47.70%<span></span>
</td>
<td class="nump">44.70%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_ConsumerMember', window );">Consumer [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Net sales</a></td>
<td class="nump">$ 6,006<span></span>
</td>
<td class="nump">$ 5,648<span></span>
</td>
<td class="nump">$ 15,713<span></span>
</td>
<td class="nump">$ 15,303<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_ConsumerMember', window );">Consumer [Member] | Sales Revenue, Net [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Percentage of concentration risk</a></td>
<td class="nump">16.80%<span></span>
</td>
<td class="nump">15.20%<span></span>
</td>
<td class="nump">14.20%<span></span>
</td>
<td class="nump">14.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_AutomotiveMember', window );">Automotive [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Net sales</a></td>
<td class="nump">$ 5,174<span></span>
</td>
<td class="nump">$ 6,942<span></span>
</td>
<td class="nump">$ 18,018<span></span>
</td>
<td class="nump">$ 20,485<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_AutomotiveMember', window );">Automotive [Member] | Sales Revenue, Net [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Percentage of concentration risk</a></td>
<td class="nump">14.50%<span></span>
</td>
<td class="nump">18.70%<span></span>
</td>
<td class="nump">16.30%<span></span>
</td>
<td class="nump">18.70%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_AerospaceDefenseMember', window );">Aerospace &amp; Defense [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Net sales</a></td>
<td class="nump">$ 2,682<span></span>
</td>
<td class="nump">$ 2,516<span></span>
</td>
<td class="nump">$ 8,290<span></span>
</td>
<td class="nump">$ 7,929<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_AerospaceDefenseMember', window );">Aerospace &amp; Defense [Member] | Sales Revenue, Net [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Percentage of concentration risk</a></td>
<td class="nump">7.50%<span></span>
</td>
<td class="nump">6.80%<span></span>
</td>
<td class="nump">7.50%<span></span>
</td>
<td class="nump">7.20%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_IndustrialMember', window );">Industrial [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Net sales</a></td>
<td class="nump">$ 2,591<span></span>
</td>
<td class="nump">$ 2,792<span></span>
</td>
<td class="nump">$ 7,629<span></span>
</td>
<td class="nump">$ 8,441<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_IndustrialMember', window );">Industrial [Member] | Sales Revenue, Net [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Percentage of concentration risk</a></td>
<td class="nump">7.30%<span></span>
</td>
<td class="nump">7.50%<span></span>
</td>
<td class="nump">6.90%<span></span>
</td>
<td class="nump">7.70%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_ElectronicsMember', window );">Electronics [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SalesRevenueNet', window );">Net sales</a></td>
<td class="nump">$ 2,519<span></span>
</td>
<td class="nump">$ 2,774<span></span>
</td>
<td class="nump">$ 8,151<span></span>
</td>
<td class="nump">$ 8,515<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_ElectronicsMember', window );">Electronics [Member] | Sales Revenue, Net [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Percentage of concentration risk</a></td>
<td class="nump">7.10%<span></span>
</td>
<td class="nump">7.50%<span></span>
</td>
<td class="nump">7.40%<span></span>
</td>
<td class="nump">7.80%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=84177426&amp;loc=d3e6351-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13531-108611<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=84177426&amp;loc=d3e6404-108592<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77997519&amp;loc=d3e13537-108611<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SalesRevenueNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total revenue from sale of goods and services rendered during the reporting period, in the normal course of business, reduced by sales returns and allowances, and sales discounts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SalesRevenueNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorCustomersAxis=ufpt_MedicalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorCustomersAxis=ufpt_MedicalMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorCustomersAxis=ufpt_ConsumerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorCustomersAxis=ufpt_ConsumerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorCustomersAxis=ufpt_AutomotiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorCustomersAxis=ufpt_AutomotiveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorCustomersAxis=ufpt_AerospaceDefenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorCustomersAxis=ufpt_AerospaceDefenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorCustomersAxis=ufpt_IndustrialMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorCustomersAxis=ufpt_IndustrialMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorCustomersAxis=ufpt_ElectronicsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorCustomersAxis=ufpt_ElectronicsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6758338288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Other Intangible Assets (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of Intangible Assets</a></td>
<td class="nump">$ 79,000<span></span>
</td>
<td class="nump">$ 79,000<span></span>
</td>
<td class="nump">$ 239,000<span></span>
</td>
<td class="nump">$ 239,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear', window );">Finite-Lived Intangible Assets, Amortization Expense, Remainder of Fiscal Year</a></td>
<td class="nump">$ 79,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 79,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the remainder of the fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6768946416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Other Intangible Assets - Definite Lived Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Dec. 31, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated useful life (Year)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross amount</a></td>
<td class="nump">$ 2,987<span></span>
</td>
<td class="nump">$ 2,987<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(2,908)<span></span>
</td>
<td class="num">(2,669)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Net balance</a></td>
<td class="nump">$ 79<span></span>
</td>
<td class="nump">$ 318<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember', window );">Patents [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated useful life (Year)</a></td>
<td class="text">14 years<span></span>
</td>
<td class="text">14 years<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross amount</a></td>
<td class="nump">$ 429<span></span>
</td>
<td class="nump">$ 429<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(429)<span></span>
</td>
<td class="num">(429)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Net balance</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember', window );">Noncompete Agreements [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated useful life (Year)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross amount</a></td>
<td class="nump">$ 512<span></span>
</td>
<td class="nump">$ 512<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(496)<span></span>
</td>
<td class="num">(449)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Net balance</a></td>
<td class="nump">$ 16<span></span>
</td>
<td class="nump">$ 63<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerListsMember', window );">Customer Lists [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated useful life (Year)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross amount</a></td>
<td class="nump">$ 2,046<span></span>
</td>
<td class="nump">$ 2,046<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated amortization</a></td>
<td class="num">(1,983)<span></span>
</td>
<td class="num">(1,791)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Net balance</a></td>
<td class="nump">$ 63<span></span>
</td>
<td class="nump">$ 255<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerListsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerListsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6907472480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Income Taxes (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Mar. 31, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</a></td>
<td class="nump">33.60%<span></span>
</td>
<td class="nump">35.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33.30%<span></span>
</td>
<td class="nump">35.40%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income Tax Expense (Benefit)</a></td>
<td class="nump">$ 856,000<span></span>
</td>
<td class="nump">$ 1,437,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,248,000<span></span>
</td>
<td class="nump">$ 3,550,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions', window );">Tax Adjustments, Settlements, and Unusual Provisions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 40,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201609Member', window );">Accounting Standards Update 2016-09 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income Tax Expense (Benefit)</a></td>
<td class="num">$ (37,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (162,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I)<br> -URI http://asc.fasb.org/extlink&amp;oid=34349781&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32698-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a),(b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08.(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) to previously recorded tax expense. Includes, but is not limited to, significant settlements of income tax disputes, and unusual tax positions or infrequent actions taken by the entity, including tax assessment reversal, and IRS tax settlement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=96869850&amp;loc=d3e28446-109314<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=96869850&amp;loc=d3e28511-109314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxAdjustmentsSettlementsAndUnusualProvisions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201609Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201609Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6762266128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Plant Consolidations (Details Textual)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Mar. 18, 2015 </div>
<div>USD ($) </div>
<div>ft&#178;</div>
</th>
<th class="th">
<div>Sep. 30, 2017 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2016 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2017 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2016 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring Charges</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 25,000<span></span>
</td>
<td class="nump">$ 63,000<span></span>
</td>
<td class="nump">$ 203,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementGeographicalAxis=ufpt_NewburyportMassachusettsFacilityMember', window );">Newburyport, Massachusetts Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AreaOfRealEstateProperty', window );">Area of Real Estate Property | ft&#178;</a></td>
<td class="nump">137,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Restructuring Charges</a></td>
<td class="nump">$ 2,100,000<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 25,000<span></span>
</td>
<td class="nump">$ 63,000<span></span>
</td>
<td class="nump">$ 203,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Payments for Restructuring</a></td>
<td class="nump">2,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementGeographicalAxis=ufpt_NewburyportMassachusettsFacilityMember', window );">Newburyport, Massachusetts Facility [Member] | Employee Severance Payments and Relocation Costs [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedCostExpectedCost1', window );">Restructuring and Related Cost, Expected Cost</a></td>
<td class="nump">180,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementGeographicalAxis=ufpt_NewburyportMassachusettsFacilityMember', window );">Newburyport, Massachusetts Facility [Member] | Moving and Vacating Expense [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedCostExpectedCost1', window );">Restructuring and Related Cost, Expected Cost</a></td>
<td class="nump">1,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementGeographicalAxis=ufpt_NewburyportMassachusettsFacilityMember', window );">Newburyport, Massachusetts Facility [Member] | Lease Termination [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedCostExpectedCost1', window );">Restructuring and Related Cost, Expected Cost</a></td>
<td class="nump">$ 360,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AreaOfRealEstateProperty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area of a real estate property.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AreaOfRealEstateProperty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:areaItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRestructuring">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRestructuring</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringAndRelatedCostExpectedCost1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount expected to be recognized in earnings for the specified restructuring cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedCostExpectedCost1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.P.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140864-122747<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementGeographicalAxis=ufpt_NewburyportMassachusettsFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementGeographicalAxis=ufpt_NewburyportMassachusettsFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveAxis=ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveAxis=ufpt_EmployeeSeverancePaymentsAndRelocationCostsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveAxis=ufpt_MovingAndVacatingExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveAxis=ufpt_MovingAndVacatingExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveAxis=ufpt_LeaseTerminationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveAxis=ufpt_LeaseTerminationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6910626592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Plant Consolidations - Restructuring Costs (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 18, 2015</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 25,000<span></span>
</td>
<td class="nump">$ 63,000<span></span>
</td>
<td class="nump">$ 203,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementGeographicalAxis=ufpt_NewburyportMassachusettsFacilityMember', window );">Newburyport, Massachusetts Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessExitCosts1', window );">Relocation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">25,000<span></span>
</td>
<td class="nump">63,000<span></span>
</td>
<td class="nump">203,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringCharges', window );">Total</a></td>
<td class="nump">$ 2,100,000<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 25,000<span></span>
</td>
<td class="nump">$ 63,000<span></span>
</td>
<td class="nump">$ 203,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessExitCosts1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Includes, but is not limited to, one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, and relocating employees, and termination benefits associated with an ongoing benefit arrangement. Excludes expenses associated with special or contractual termination benefits, a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.P.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140864-122747<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140904-122747<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessExitCosts1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.P.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140864-122747<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=98514028&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=27011515&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementGeographicalAxis=ufpt_NewburyportMassachusettsFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementGeographicalAxis=ufpt_NewburyportMassachusettsFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6655268160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Related Party Transactions (Details Textual)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2017 </div>
<div>USD ($)</div>
</th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MajorCustomersAxis=ufpt_VentionMedicalIncMember', window );">Vention Medical, Inc. [Member] | Non-employee Members of Board of Directors [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromRelatedParties', window );">Revenue from Related Parties</a></td>
<td class="nump">$ 148,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromRelatedParties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue, fees and commissions earned from transactions between (a) a parent company and its subsidiaries; (b) subsidiaries of a common parent; (c) an entity and trusts for the benefit of employees, for example, but not limited to, pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management; (d) an entity and its principal, owners, management, or members of their immediate families; and (e) affiliates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 225<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1(e))<br> -URI http://asc.fasb.org/extlink&amp;oid=63488584&amp;loc=d3e20235-122688<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 225<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07.1(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=6488393&amp;loc=d3e606610-122999<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromRelatedParties</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorCustomersAxis=ufpt_VentionMedicalIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorCustomersAxis=ufpt_VentionMedicalIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=ufpt_NonemployeeMembersOfBoardOfDirectorsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=ufpt_NonemployeeMembersOfBoardOfDirectorsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.8.0.1</span><table class="report" border="0" cellspacing="2" id="idp6924709504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Material Overcharge Settlement (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
<th class="th"><div>Sep. 30, 2017</div></th>
<th class="th"><div>Sep. 30, 2016</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LitigationCaseAxis=ufpt_PolyurethaneFoamAntitrustLawsuitMember', window );">Polyurethane Foam Antitrust Lawsuit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LitigationSettlementAmountAwardedFromOtherParty', window );">Litigation Settlement, Amount Awarded from Other Party</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1,700,000<span></span>
</td>
<td class="nump">$ 121,000<span></span>
</td>
<td class="nump">$ 2,100,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LitigationSettlementAmountAwardedFromOtherParty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount awarded from other party in judgment or settlement of litigation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LitigationSettlementAmountAwardedFromOtherParty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LitigationCaseAxis=ufpt_PolyurethaneFoamAntitrustLawsuitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LitigationCaseAxis=ufpt_PolyurethaneFoamAntitrustLawsuitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>56
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( 'I*:4L?(\\#P    !,"   +    7W)E;',O+G)E;'.MDD^+
MPD ,Q;]*F?L:5\'#8CUYZ6U9_ )Q)OU#.Y,A$[%^>X>];+=44/ 87O+>CT?V
M/S2@=AQ2V\54C'X(J32M:OP"2+8ECVG%D4)6:A:/FD=I(*+ML2'8K-<[D*F'
M.>RGGD7E2B.5^S3%":4A+<TXP)6E/S/WJVR;A5ND9T*YKCM+1[873T$7LF<;
M!I99-G\LCNVW<+ZT+/0:S>,*P).B0\5?UX^8 TBTH_0(:+L A#&^NQT:E8(C
M-R."?S]PN -02P,$%     @ >DII2V;S"V""    L0   !    !D;V-0<F]P
M<R]A<' N>&UL38Y-"\(P$$3_2NG=;BGB06) L$?!D_>0;FP@R8;-"OGYIH(?
MMWF\81AU8\K(XK%T-8943OTJDH\ Q:X831F:3LTXXFBD(3^ G/,6+V2?$9/
M-(X'P"J8%EQV^3O8:W7..7AKQ%/25V^9"CGIYFHQ*/B76_..7+8\#?NW_+""
MWTG] E!+ P04    " !Z2FE+3$&X;NX    K @  $0   &1O8U!R;W!S+V-O
M<F4N>&ULS9+!:L,P#(9?9?B>R&Y@(R;UI66G#08K;.QF;+4UC1-C:R1]^R5>
MFS*V!]C1TN]/GT"-"=+T$5]B'S"2PW0W^K9+TH0U.Q(%"9#,$;U.Y93HIN:^
MCU[3](P'"-J<] %AQ?D]>"1M-6F8@458B$PUUD@345,?+WAK%GSXC&V&60/8
MHL>.$HA2 %/SQ' >VP9N@!E&&'WZ+J!=B+GZ)S9W@%V28W)+:AB&<JAR;MI!
MP/OSTVM>MW!=(MT9G'XE)^D<<,VND]^JS7;WR-2*BX="B(+7.UY+44M>?<RN
M/_QNPKZW;N_^L?%54#7PZR[4%U!+ P04    " !Z2FE+F5R<(Q &  "<)P
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
M[)NF=[[.Y*/OW\&5N^M)Y?;]<)CYXW;:'YI.^N8\[WW%UPVX]?]02P,$%
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
M1S#336^O\_%2]#CCVOP'4$L#!!0    ( 'I*:4M-R^EULP$  -(#   8
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
MOVSL?X/HP*>RN_$CU/D/MA@2&A>.]_YLIC&;#(?]_(/8\HW+OU!+ P04
M" !Z2FE+MG:^'[4!  #2 P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q,RYX
M;6QM4]MNG# 0_17+'Q #2]OM"I"RJ:I6:J55JJ;/7AC BB_4-DOZ]QT;0E'*
MB^T9GW/FXG$Q&?OL>@!/7I34KJ2]]\.),5?WH+B[,P-HO&F-5=RC:3OF!@N\
MB20E698D[YGB0M.JB+Z+K0HS>BDT7"QQHU+<_CF#-%-)4_KJ>!1=[X.#5<7
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
M,"YX;6QM4V%OVR 0_2N('U 2XJ959%MJ.DV=M$E1JVV?B7VV4<&X@./NW_?
MKNMV_@+<<>_=N^-(!V.?70/@R:M6K<MHXWUW8,P5#6CAKDP'+=Y4QFKAT;0U
M<YT%44:05HQO-GNFA6QIGD;?R>:IZ;V2+9PL<;W6POX[@C)#1K?TW?$HZ\8'
M!\O33M3P!/YW=[)HL9FEE!I:)TU++%09O=L>CDF(CP%_) QN<2:ADK,QS\'X
M469T$P2!@L('!H';!>Y!J4"$,EXF3CJG#,#E^9W]>ZP=:SD+!_=&_96E;S)Z
M2TD)E>B5?S3# TSU7%,R%?\3+J P/"C!'(51+JZDZ)TW>F)!*5J\CKMLXSZ,
M-_N;";8.X!. SX#;F(>-B:+R;\*+/+5F(';L?2?"$V\/''M3!&=L1;Q#\0Z]
MEWR[WZ7L$HBFF.,8PY<Q<P1#]CD%7TMQY/_!^3I\MZIP%^&[3PJ3=8)DE2")
M!,DG@NLO):[%[+\D88N>:K!UG"9'"M.W<9(7WGE@[WA\DX_P<=I_"5O+UI&S
M\?BRL?^5,1Y0RN8*1ZC!#S8;"BH?CC=XMN.8C88WW?2#V/R-\S=02P,$%
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
MH?;A>(=G.X[9:'C333^(S=^X> =02P,$%     @ >DII2_CATIRX 0  T@,
M !D   !X;"]W;W)K<VAE971S+W-H965T,C8N>&UL;5/;;IPP$/T5RQ\0@Y>D
MFQ4@95-5J=1*JU1-GKTP@!5?B&V6].]K&T)HRHOM&9]SYN)Q/FKS8CL A]ZD
M4+; G7/]@1!;=2"9O=(]*'_3:".9\Z9IB>T-L#J2I" T26Z(9%SA,H^^DRES
M/3C!%9P,LH.4S/PY@M!C@5/\[GCD;>>"@Y1YSUKX!>YW?S+>(HM*S24HR[5"
M!IH"WZ6'8Q;P$?#$8;2K,PJ5G+5^"<;WNL!)2 @$5"XH,+]=X!Z$"$(^C==9
M$R\A W%]?E?_%FOWM9R9A7LMGGGMN@+O,:JA88-PCWI\@+F>:XSFXG_ !82'
MATQ\C$H+&U=4#=9I.:OX5"1[FW:NXCY.-]?I3-LFT)E %\(^QB%3H)CY5^98
MF1L](C/UOF?AB=,#];VI@C.V(M[YY*WW7LITO\_))0C-F..$H6O,@B!>?0E!
MMT(<Z7]TNDW?;6:XB_3=.OI-MBV0;0ID42#[I\3;3R5N8&Z33T'(JJ<23!NG
MR:)*#RI.\LJ[#.P=C6_R 9^F_2<S+5<6G;7S+QO[WVCMP*>27/D1ZOP'6PP!
MC0O'+_YLIC&;#*?[^0>1Y1N7?P%02P,$%     @ >DII2R;B CH^ @  Q08
M !D   !X;"]W;W)K<VAE971S+W-H965T,C<N>&ULA57;CILP$/T5Q/LNX0X1
M0=JP6K52*T5;M7UVR"2@-9C:3MC^?7UA60).\X(]XS-SSMAFG/6$OK$*@%OO
M#6[9QJXX[]:.P\H*&L0>20>M6#D2VB N3'IR6$<!'510@QUOM8J<!M6MG6?*
MMZ-Y1LX<URWLJ,7.38/HWRU@TF]LU_YPO-:GBDN'DV<=.L$/X#^['166,V8Y
MU VTK":M1>&XL9_<=9%*O +\JJ%GD[DE*]D3\B:-KX>-O9*" $/)908DA@L4
M@+%,)&3\&7+:(Z4,G,X_LK^HVD4M>\2@(/AW?>#5QDYLZP!'=,;\E?1?8*@G
MM*VA^&]P 2S@4HG@* EFZFN59\9),V014AKTKL>Z56.O5\)T"#,'>$. -P8(
M[O\%^$. _QD0J.*U,E7J,^(HSRCI+:H/JT/R3KAK7VQF*9UJ[]2:J)8)[R5W
M4S=S+C+1@-EJC#?%C A'9!\I/!/%UEN$>]<$Q1(11V8&WUB$K^*#JR)F'%N-
MB16FU9A87/;53,H2]N"Z030%7@D*C(("@R!_)DACP@E3%"9+04O8@^_&-_6$
M1CVA04\PTQ,N*H\2J6<N*%P("N/H]@9%1D&105!H3A ;$\3WC[R(%TI]-[PI
M-#'R)/=/LDA,1W2;*#42I?>/J$B7E]-WW261,_G[&Z GU2B959)SR^5_-O&.
MO?C)D]UCYM^*'JU;ZF<:W>"_(WJJ6V;M"1>]2760(R$<A,S5H]B*2KPIHX'A
MR.4T%G.J.ZLV..F&1\,97Z[\'U!+ P04    " !Z2FE+F*0)71,"  "U!0
M&0   'AL+W=O<FMS:&5E=',O<VAE970R."YX;6Q]5-&.FS 0_!7$!YR#22!W
M(DB75%4KM5)T5:_/#MD$=#:FMA.N?]^U(1P!MR^QO<S.SFSLS5JIWG0)8()W
MP6N]"4MCFB="=%&"8/I!-E#CEY-4@AD\JC/1C0)V=$F"$[I8)$2PJ@[SS,7V
M*L_DQ?"JAKT*]$4(IOYL@<MV$T;A+?!2G4MC R3/&G:&'V!^-GN%)S*P'"L!
MM:YD'2@X;<+GZ&F76KP#O%;0ZM$^L$X.4K[9P]?C)EQ80<"A,):!X7*%'7!N
MB5#&[YXS'$K:Q/'^QO[9>4<O!Z9A)_FOZFC*3;@.@R.<V(6;%]E^@=[/*@QZ
M\]_@"ASA5@G6*"37[C<H+MI(T;.@%,'>N[6JW=KV_+<T?P+M$^B0@+7_EQ#W
M"?%'PM*9[Y0YJY^887FF9!NH[L]JF+T3T5.,S2QLT/7.?4.W&J/7/'I,,G*U
M1#UFVV'H&#,@"+(/):BOQ);.TNE]@=T<D2;^"K'71.SRXSL3J9]@Z258.H+E
M'<%ZTH4.DSI,[3!Q.O$QAZS^T:F55\;*(^-Q(J/#K,8RHF0J9 ZB4;KV2TF\
M4I)92W$R^ E2+T$Z\T(7T<1+.N\7G5J98^)HVE0RNNT"U-D-!AT4\E(;>Z]&
MT6'V/%/[6B;Q+<ZD;H1\T'0#[3M3YZK6P4$:?(ONQ9RD-( 2%P_8Z!)GZ'#@
M<#)VF^)>=9.D.QC9]$.2#),Z_PM02P,$%     @ >DII2P-UC%+= @  8@L
M !D   !X;"]W;W)K<VAE971S+W-H965T,CDN>&ULC5;MDIHP%'T5A@<0$A*"
M.^I,U6H[T\[L;*?M[ZQ&918(A:C;MV\":"6YZ/X1$L^Y]]P/KW=REM5;?1!"
M>>]Y5M13_Z!4^10$]>8@<EZ/9"D*_<U.5CE7^ECM@[JL!-\VI#P+<!C&0<[3
MPI]-FKOG:C:11Y6EA7BNO/J8Y[SZ.Q>9/$]]Y%\N7M+]09F+8#8I^5[\$.IG
M^5SI4W"ULDUS4=2I++Q*[*;^)_2T1M00&L2O5)SKFW?/A/(JY9LY?-U._= H
M$IG8*&."Z\=)+$26&4M:QY_.J'_U:8BW[Q?KJR9X'<PKK\5"9K_3K3I,_<3W
MMF+'CYEZD><OH@N(^EX7_3=Q$IF&&R7:QT9F=?/I;8ZUDGEG14O)^7O[3(OF
M>>[L7V@P 7<$?"4@<I<0=83HHP32$<A'";0CT(\2XHX0_R>PNP36$9CE(6BS
MVY1KR16?32IY]JJVXTIN&AL],=T0&W/9U+_Y3E>LUK>G&0[Q)#@90QUFWF)P
M#Q/U,0L(0_J8)8#I(SZ["!;W(:N'1M9WC00Z&]>48# EN.&37BC4"J7%L 93
M-!@4QF$86O&XL)@YJ)6+(@0YL+4+PS&YA?5BB\#8(B V*\/S%D-O8\-19-?A
M$:HGAH!B"""&66):3'(;-!O9Y5@]0O7$4% ,!<0DEAOJ5( RMYYKZJ2&WBE4
M#,J) 3EC2T[LR$E"[,IQ812/!^4P4 YSY2"[C9D3=DP1LL2XH $=":@C 718
M+E:)VPSQB PTPQAT,P;<6&-F.7;2RBAQ?]P/83TY*(2G= @(BNS)"('(@)^!
M?P,$F!C('(*G)P+&)W*&.';:@$2,V8/<145),AZ0 P\\!$P\Q&PYD=LR9$1M
M.0 *CQ(\H >>>0@8>B@9, %/*@2,*F3-A@5R9Y7I.J?O@IM%P6R?WWFU3XO:
M>Y5*[QS-9K"34@EM,QQIFP>]\%X/F=@I\\KT>]5N?>U!R;+;:(/K6CW[!U!+
M P04    " !Z2FE+ N:%Q+@"  "G"@  &0   'AL+W=O<FMS:&5E=',O<VAE
M970S,"YX;6R-5M&.VC 0_)4H'W")G80  J2#4+52*YVN:OOL P/1)7%J&[C^
M?6W'Y(*S$%Z(;6;'.V-KO;,SX^_B0*GT/LJB$G/_(&4]#0*Q.="2B"=6TTK]
MLV.\)%)-^3X0-:=D:X+*(L!A. I*DE?^8F;67OABQHZRR"OZPCUQ+$O"_RUI
MP<YS'_F7A==\?Y!Z(5C,:K*G/ZG\5;]P-0M:EFU>TDKDK/(XW<W]9S1=HT@'
M&,3OG)Y%9^QI*6^,O>O)M^W<#W5&M* ;J2F(^ISHBA:%9E)Y_+6D?KNG#NR.
M+^Q?C'@EYHT(NF+%GWPK#W-_['M;NB/'0KZR\U=J!26^9]5_IR=:*+C.1.VQ
M884PO][F*"0K+8M*I20?S3>OS/=L^2]A< "V ;@-4'O?"XAL0/09$-\-B&U
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
M9^T?WUE* ]9*M+ 7I++==5QP.!LW3>U<]3VF7QC9#NV3C#V\^ M02P,$%
M  @ >DII2R&+O,DM @  :@8  !D   !X;"]W;W)K<VAE971S+W-H965T,S,N
M>&ULC97;CILP$(9?!7'?&!S,(2)(FZVJ5FJEU59MKQTR"6@-IK83MF]?VQ!*
MP2OM37S@G_GF=\R0]UR\R I >:\-:^7>KY3J=@C)LH*&R@WOH-5/SEPT5.FE
MN"#9": G&]0PA(,@1@VM6[_([=Z3*')^5:QNX4EX\MHT5/PY ./]W@_]^\9S
M?:F4V4!%WM$+? ?UHWL2>H6F+*>Z@5;6O/4$G/?^0[@[A($)L(J?-?1R-O>,
ME2/G+V;QY;3W U,1,"B524'U<(-'8,QDTG7\'I/Z$],$SN?W[)^L>6WF2"4\
M<O:K/JEJ[Z>^=X(SO3+US/O/,!HBOC>Z_PHW8%IN*M&,DC-I?[WR*A5OQBRZ
ME(:^#F/=VK$?\]_#W %X#,!3P-8&H %D*_](%2URP7M/#(??4?,?ASNLSZ8T
MF_8H[#-=O-2[MP*3+$<WDVC4' 8-GFG"28%T]@F!78@#7H7C.' GV#IKW-H$
MT7\)PD6-@X9836LU44Q(ZL9$3DSDP. %9M"D,PP.-@%Q8X@30QR8[0)#5FXP
M3I(W#BUV8F(')EI@XK6;:).X*8F3DC@H9$%)5F8^A-LHS-R<U,E)'9QXP4G7
M;K8;$KDQF1.3O>.F92L[A&3!&VYTPW*^=<$[[MHH6ERV+%Z0T.Q5;T!<;).3
M7LFOK>VPL]VID3Y@VRK^R8<N_(V*2]U*[\B5;CBV+9PY5Z"K"3;:<:4;_[1@
M<%9FFNBY&+K?L%"\&SL[FCXOQ5]02P,$%     @ >DII2P1/X-+Q 0  - 4
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
M0=MI8N:RN^-=H$7CGR_4OZ'Y7U!+ P04    " !Z2FE+KET%2#\"  #Q!@
M&0   'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6R-5=&.VC 0_)4H'W F3@P<
M"I$N0-5*K82N:OMLPD*B<^+4-N3Z][6=D -CT;X0>S,SN[,XZ[3CXDV6 "IX
MKUDCEV&I5+M 2!8EU%0^\18:_>; 14V5WHHCDJT NK>DFB$\F4Q13:LFS%(;
MVXHLY2?%J@:V(I"GNJ;B3PZ,=\LP"B^!U^I8*A- 6=K2(WP']:/="KU#H\J^
MJJ&1%6\" 8=E^!(M-L3@+>!G!9V\6@?&R8[S-[/YLE^&$U,0,"B44:#Z<885
M,&:$=!F_!\UP3&F(U^N+^B?K77O940DKSGY5>U4NPWD8[.% 3TR]\NXS#'Y(
M& SFO\(9F(:;2G2.@C-I?X/B)!6O!Q5=2DW?^V?5V&<WZ%]H?@(>"'@D1.0A
M(1X(\0<A>4A(!D+ROQG(0"!.!M1[M\U<4T6S5/ N$/UQ:*DY==&"Z+^K,$'[
M[]AWNI]21\\9GB<I.ANA 9/W&'R%F9%;R/H>$HT(I L8J\"^*G)\1\>W"5;W
MB-G4J>&?(IN'(C=EQMYFQ9:?W#3+Z43>8XC%-'T./'4ZNO* HF>WISZE9.)8
M\BG-8[^IQ&LJ\9AR6ILG=UGFSXXE#V3F&/) G$0;#P3[S1"O&>(QXY21D_N6
MQ21V['A >.Z<I[5/";N6?$I3XIA"5]]K#>)HAZ<,"GYJE#F-5]%Q/K]@\[T[
M\3Q:K")/?*WG>3]^/^3[R^ ;%<>JD<&.*SUE["PX<*Y USYYTF67^OX9-PP.
MRBQG>BWZ*=QO%&^'"P:-MUSV%U!+ P04    " !Z2FE+&'E_OOL#  "I$P
M&0   'AL+W=O<FMS:&5E=',O<VAE970S."YX;6R-F.N.HS@0A5\%\0 #+C"&
M*(G4N8QVI5VI-:O=^4TGSD7#)0ND,_OV"X3.)*[C-'\ZX/[JX"K*)XZGE[+Z
M41^T;IR?>5;4,_?0-*>)Y]6;@\[3^DMYTD7[GUU9Y6G3WE9[KSY5.MWV07GF
MD>]'7IX>"W<^[<=>J_FT/#?9L="OE5.?\SRM_EOHK+S,7.%^#'P[[@]--^#-
MIZ=TK__2S=^GUZJ]\VXJVV.NB_I8%DZE=S/W14S6E'0!/?'/45_JNVNG2^6M
M+']T-[]O9Z[?S4AG>M-T$FG[\:Z7.LLZI78>_PZB[NV97>#]]8?ZUS[Y-IFW
MM-;+,OM^W#:'F1N[SE;OTG/6?"LOO^DA(>DZ0_9_Z'>=M7@WD_89FS*K^[_.
MYEPW93ZHM%/)TY_7SV/1?UX&_8\P'$!# -T"VF<_"PB&@.!70/@T(!P"PK%/
MD$. -)[@77/OB[E*FW0^K<J+4UW[X91V;2<FLGU=FVZP?SO]_]IZUNWH^YSB
M>.J]=T(#L[@R=,<H^8BL.")NA-=.X#8+0K-8$ NGQP<L.:$B8PZ?BJR?BCQ,
M,X#%"OKX\#Y>&;6Z(JI'BAX)9!2'1C: 4D2^D1"GA/ C"HRL .8G$5DR"V%F
M(<N,X@0+2"@@N4!BY+- C# J,X)9C6#6SYF'A"*84 0$" LH** ^;Q;%WURD
MA-GZB)*AL4A7G)(4D[D".!7&B0QP7C',*P:%L0@D4" 9T2J(,1<18DQ?0HSA
M&VO$*)R0\+&)^D BMDA8?%A\WBX#<__VHG9'8)0%4#)B[0(H(94PO05B@6]Y
MWP*Z^XL@4!Z+NPCLO();+V\:  6^;Y8'0:;#0,A<2Q"R50;;KN"^&_BA10(;
MK^!.QQM'\I80REQ/@(J2D,S2<$K$OHC-XG",_#"6EMRP!PMNPH%OD\ N++@-
M@\;A4,#7%8*461T$L=H\5WI,"YNPX"X<^+8EA6U8<-_CC9/PMQC%YA<4HJ0P
MMV> BMFK6 -*)63)C+ =$[?C0/@6"6S'Q.V8MPV  F%N:"!D+JHQ2FL(6?R&
ML!,3=^) 6/R&L!/3B$TP\2TI2;;50Y1*6&DXI:*[AAAJPZDX#&V_0; 9$S!C
M87$;PF9,8[;!  K,U;*$D/DU!2%EE@9!ELT)81\FX,/"MB:Q#].([3#QW6GK
M(XE9&4 I\\ML!:A82+:D "6M[QQ;,0$K)IO;8"NF,5MB  7$UA2 >-L@)?9;
M&4&FVWAWQPRYKO;]F4_M;,IST70_HN]&;^=*+]0=4QCC"S%9"C"^$I/U]=3H
ME_SU$.O/M-H?B]IY*YNFS/LCC%U9-KJ=N_^E;?F#3K>WFTSOFNY2M=?5]?#H
M>M.4I^%@S+N=SLW_!U!+ P04    " !Z2FE+/Y*WU0\"  #B!0  &0   'AL
M+W=O<FMS:&5E=',O<VAE970S.2YX;6R-5-MNVS ,_17#'U#YVJR!8Z!.,FS
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
M)!!,#-F8.)KXZ2&IAK0:$L0(3;)]M5%):*%6@!8:P4:V0M!6"-@*88$(%(@
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
M]C([3:/W_[.EYY.5XO&-CV]6/ ]!BV?=M61-O^U1;7MW3\G,9!/-DRCR4Q"
M@&(B1L,\:@S0X/LVX\K66_+J(WHFW:RZ^C8^=-'UW@>MV-AU_W*-W3JNM;[)
MRMZMLQEY&0U\+N0\6$A70AD=&^TZM3"-;9T];#SH[ TV=CG:'!D8?P;5!)XO
MP&I\^39-P- !6V41-G3S+;@8)!U!C7'TY/[DKS<@9N?K,"8?$>5EB^4&38H@
M+U(D#8JT1I/W@,HTA(&3>YX&@*TE9V"GY!$WFF0(Z?%;$*8G#-D EH/+6H1?
M4:(;#9P/&W3B<'YA-1C,*PXDRO>]EFMLOB?JWW$0,[I]NJ=]2PLDHAF6ZDVU
M)QMVP&L_"X..^_=-&!6YW'#[6__$P^4*F_M *A_H%,C-V-B%+4#9O$L-DJ=L
M1G*&+D'T9Y8-V;[WSN;_+#)IPN4)F 1@PP7@E*/%71(WH6_D;<&FN0]AE[*[
M+4M*1O/1BC";TF\.<2'(03^]\[,=^[7AW7\-T%5!GKJ#;0K;F"FR=.A]O@+W
M0L@H;0FTEPC"-L^@IG(-7DE78UQ88_LL\.NN:#>ZR OBBD6:K&&I]["E]Y!*
MF7?$"0=Y<N!E!IS/Y61=A%2YLB(C]\8(X;Y5+<(8#)X]J[H!41R$&Q"XZ'5O
MRXT3)?'2[J+55\2_@J@.,UJ5,%B3#6&*> "?^GD.X!O9[49,*OKZ>9$GH)$?
MPGR%=B7:QF2PU88M)Q16.XKC- QR9?-@0!86@0AKZLL&9DU8L@A:M!=0IHL!
MNH18K+$8M-WO^#*,T?S'M6_([CVH/\<]8NMYG>2<N2#H4-0216_0K8S-1,#6
MQ->7 AO #I4<;6C0=.G'4D0YFO!5(DR?""<VC<G>A%D0)6!^<?;S)_XU9Z\C
M(-UN!-KB%A_#RHSK DF.!$(38HW^ME00@:X@%B4X64U54!B;!ZLXB9)EB (,
M='./'8,48N@<>?V78&UN_'A+W]R7)VPCIH9!05+Q$+"Q ET(A.4QO@/S&5YM
MBC0K4$8 >G&LM(@X38A?;GD QE#I4('D)NE+D5FP?G%)R/X@,U-8%#BB*865
M,Q3HEPGL3K?/XL3@G(J_^!I18D'%G73"**D!H@BA:GJ4#D":<M!YF"@P.)QB
MNK:W3? (:(1,H*GD%2-Q<,<EE++ H#7*!N6WX>;9" F&2)5&*?KK08"@T Y'
M/'^.P](XH&6>K8%' A_P"9L*S96U'X,-0Z(("+7V?P$S%B3NFCJ09@9G9"T%
M4+Z"_><O%CS(!4V)*IS4MXJ4FE4F?9]7S \-R[A0;NTC9D&B*<8Q(@K[V<!)
M^3V/"PF ,M#97)CB52?"*$F4'M$'4%-$8@2I67']R)/8IY4Q'"-G3GH,K03,
MBE4T!'T2P^= KN,J9N_]+;8>.NPZZ=$GUI\YT)56(?0.B![P. +H0#QQ#J8:
M&&1@LR["%"QTZ#0%0F[IG^(WN87!O(75XT-\"?-=\KNTP)R+X&8YZ9CU/8>]
M0[F?]=ATV%=?] ;5$MT1+7'JB!6 _](8#M9PM49[A9=6Y<5Z$R5;SD4"!@4;
M4$ZI10U)?_-C@K#$(X(/" DSHLDYV"/@""&AY9-*&*W].5?RA^ X&@"L&(Y3
M'WKXB4*",*Q1F7B@3&Z+S49X8L!XI6VMYQ.-&@P;.?7.E?S/'J4 O ZPL&MD
M3-U[UD32,4D&:?>?B $H[0#=7[#2S3MB@PG\&;GL2@LREX9-2KF(C T<=PP#
M.^YDRM#()7VM&6WQW&R.P;P4(00/6EF7OHR>WQ4Y47B+B0,$#*#P$!:@4R,P
M3!0: (4N_3!E7RAF4U.]5S&ZWD9]KG5Y*E4&7>:O[<.5GVFR+*Q:.2PK8/_X
M695^2DOOPJD>RAR$(V3T3N;!80^K$$>!?45R<DZQ5#]-MT0(*1Z%.-_ MOQ*
M I\M<!4B\G7' [_(2KF;8>X"]A/&,$ 9T=.$K,(2<B$X=R91_343PIV\S';L
M;!V(3(?"SZAWJ-@R)54@=%NS(SY5R@L8*4G3Y %!H5XRL8)*\MX/(\JC2=$@
M@3,RUQ"WO^9"GK>XD&]J^DUO"?)*Y,XP I4YM1%OE/OQ&,X;RJ%>-X!C-K>9
M@?VXIA"@8 O$P)*J'$C1B@X2QQHI)"']!S\5_D=(G)DL8XIQ(L/&B@$IBB6U
M*]@9&1@A#&$. RZU+#NNC!9LIR2&?"LG$Z%U =U)K[:!*$::U;Q[ @VY($V*
MY0HFO*=0'7JJBM=39)LL2,,[82/-,2,1*6LI5NY +FS'/<:SL@:VF(KG)&<;
M!A\"C;9"31HWY;.55JGDFSQYH0GQZI,>"!9XHL8$U^L$206H? .67@ .9@92
M]%3^<_LC^;=MB/-5R!=@GH.Y3A'.#XL%T! T/NA+_#>0_VYK?JHVR+R<^A3^
MP^GPG[4YES9!!HP]&#(/FT_8Q\K3%3W1K"W)K?=RP2R9C0 D0,]HR&2ZQX;<
M(\#A&/]Z,_@['7KX=^(2G^7450MDJI"2QO.2;2Q>1MW-DB.14V^#!T0G>D&B
MSP/NJ$JZP3XY<OMC8;R,)Y17E':HU3<Y&@Z%:7/DC8>B1ZN[@NM>))@QHC@Q
MS _*:+U&XVLGQ*%T^9:!&8 )]TCML[J);)A)EMM\IGX?) N4,=4S&5.]4+&5
MFQ2%QG$5CFVV_<BQ( U!5I9Q :1[%RY$_@:W)U@Z9\MERI<HX<#( >L?([%?
MRB2/9A+IA4"F_"?S!IXS H,'ML^X-QJPMY)_7<\9#.#UI <L?E'&:HY'KN--
M1^R$>>/>= IO-B&*WN.!,QGUX;$[[<'KG6D-F'.G,V<Z058%*WCHLD%OA'L8
M<[PS-1^I-5OW8=7=&T#W<5]T!\/J"T6-2B<ID/L1Q?)CH/D0L[\5P&ECY1))
MW!P1<GJ( S''?0+R#?T]\$!F/?=9]68>8FP3C4PP+('(8?;+Z0)YJFX,N+WI
M\%G%+AMBER-% [42-#0T7ACUIB4;G:HPOJ8#-;5W-.V-A$00_*\!C*S.?3"S
M1$_8+Z!.8"9*<9=JU"?/A#^4.NTKZCB.\0?YY&$WH0#/5V&&54)8OS4'#;65
M"PMDD-IB506Z*"]U<$E0N7<11J=RFBV(A>743('/O5M09BIWN UY-$>;ZIXB
M@US$!*0U 188+4+@!=$DU#H"F&)]02+8G-S7&H1$*+DX :W0^O4& )IFYBD@
M-93)A98!6B6M>NQ-Y?BWBL*CT60B1.=(B<ZC*3C%XI$W:Y>F8V<$>RHCBQ/$
MG+"S,+PO"0PB]1>JBPH%%X!\[@UA6YC'PZ@1[JC*5U>^,(IX45^"W_L#=-9
M>:"FO@%I+' G\U)84P5*3"67@6A*LBF_NB[^<Q(E0OZ#ML-P5.5A^G=)D9OU
M<L:.9=CPX^WGK(P9E@ICOI<"+_2!&]+^<WPO995)-@\!]:,I:7:4 &=H(Z#_
MZSF329]YPQ[\E1I(#G/L#IRA.T/Q#")L6!O?0-K1R)GU9V*"V9B=Y<:-B)&N
ME(M(,:"!R6(1,D"70)Y8XW"923LE.LFD+SX+ZD8T<A%FF]?%6L\3H&VB;>92
M%4KW*\0]!RM*15!0FG551)W%!:V/XG%:&K/S3G'8T!E,)FS@3*> %L#P".T-
MKS?U''9F#:T>34:TK5!M&/VN$9B++<62ZM7VJ1'UD3Y+[7/=>48\P,Y0J (I
M>2SC;>)O?9%-QOSH/Z#[3$E^M,/'SIC4[\1Q053\E*2_X);<8((I SO6<<<N
M_!T 0UYBB<$*H%@F*$)'SL =P=_Q="SMV[#$!>CB@>.BGF7NT'%'EH#)&'!;
M%<S0UFVKN/LSNQ!^&'5^(K['NS.C9!,Q0PP@@A2;.0P5_E$?B^E4-%&\Z=&;
MZNT1. CJB1QC1OB>]8P+GQ!3D2%^ \0A0=#((LO:M*K%H]8Y:4S$1/9_MW*A
MH6@;YD"U156)P6)'TU>F(^Q;64)@GZ?8[)_)6M,@ _F1\ =K8&A2Q=!/RGTR
MF/1(^_[E4LJ2!.)Z4X@(!>"QA ->QH:*$'+&0I+D*G=0ZK:ZQ?^BFX]N<K^[
MUX(X$NR) [X8[GIP4[%"LX^?IP/K2$VDS@M2#_74,&(#]2T#(3R=,) -4^\@
MZ!0J)R!S!@@9](?/WI@@'LET&A*@3%JI+JJ:4\,]_QI$Q5R%Y(1Q**FP@8T(
M)@K(K6;^7+CT#M(2NB.E=O+J#RNI.FV6E/#'-:8,,RFV<S"=I;%9\Q5D)Q5H
M40C5S!2-6Q%8C:=UJ$E?8."Z/6M(%<;>!+VA]@3CF U&P"4#-O)0P3I&@3;%
MZ"1?KFLG;YK%:SL-GBK#I\TY:[$YN?-$.I!E\!I+/ZH"%2I>P(["Q!1C]522
M2U97!&5:"S$.KJ"B5#VGJ;!^G3"W_ZP=^;4(8FFK@<Z=%YA-PZ& )]#>!8<K
M ^5'4J>$ ZTN&?)YS^?H:(@R@&*--O19 <T2E(KP&8A,B)-5R0L,#V%V;%Z@
M88MY#\QZ1[ MTB0.@TSR,9A=9>TB%O5([NZ4=I36F$&4U=L:@H\6'ZCZ]%[
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
MV3=02P$"% ,4    " !Z2FE+'R// \     3 @  "P              @ $
M    7W)E;',O+G)E;'-02P$"% ,4    " !Z2FE+9O,+8((   "Q    $
M            @ 'I    9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( 'I*
M:4M,0;AN[@   "L"   1              "  9D!  !D;V-0<F]P<R]C;W)E
M+GAM;%!+ 0(4 Q0    ( 'I*:4N97)PC$ 8  )PG   3              "
M ;8"  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ >DII2[6:"5B(
M @  10D  !@              ( !]P@  'AL+W=O<FMS:&5E=',O<VAE970Q
M+GAM;%!+ 0(4 Q0    ( 'I*:4L67X)(#00  (P3   8              "
M ;4+  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    " !Z2FE+
MDXQI9V$"  " "   &               @ 'X#P  >&PO=V]R:W-H965T<R]S
M:&5E=#,N>&UL4$L! A0#%     @ >DII2Q-Q=5,<!   0!,  !@
M     ( !CQ(  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    (
M 'I*:4O:GCY^"@0  .\2   8              "  >$6  !X;"]W;W)K<VAE
M971S+W-H965T-2YX;6Q02P$"% ,4    " !Z2FE+3<OI=;,!  #2 P  &
M            @ $A&P  >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#
M%     @ >DII2_E-'UJV 0  T@,  !@              ( !"AT  'AL+W=O
M<FMS:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0    ( 'I*:4L(R(0TM@$  -(#
M   8              "  ?8>  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q0
M2P$"% ,4    " !Z2FE+L[4D([<!  #2 P  &               @ 'B(
M>&PO=V]R:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ >DII2\'+@=RU
M 0  T@,  !D              ( !SR(  'AL+W=O<FMS:&5E=',O<VAE970Q
M,"YX;6Q02P$"% ,4    " !Z2FE+QIM'[+4!  #2 P  &0
M@ &[)   >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    ( 'I*
M:4O9$Z=$M0$  -(#   9              "  :<F  !X;"]W;W)K<VAE971S
M+W-H965T,3(N>&UL4$L! A0#%     @ >DII2[9VOA^U 0  T@,  !D
M         ( !DR@  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4
M    " !Z2FE+/1H%4;8!  #2 P  &0              @ %_*@  >&PO=V]R
M:W-H965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    ( 'I*:4L/B;R+MP$  -(#
M   9              "  6PL  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL
M4$L! A0#%     @ >DII2ZLGER&W 0  T@,  !D              ( !6BX
M 'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " !Z2FE+JCM@
M;+8!  #2 P  &0              @ %(,   >&PO=V]R:W-H965T<R]S:&5E
M=#$W+GAM;%!+ 0(4 Q0    ( 'I*:4NZUIM9MP$  -(#   9
M  "  34R  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @
M>DII2R #*=S% 0  -P0  !D              ( !(S0  'AL+W=O<FMS:&5E
M=',O<VAE970Q.2YX;6Q02P$"% ,4    " !Z2FE+P-B_X;8!  #2 P  &0
M            @ $?-@  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4
M Q0    ( 'I*:4L?*I)[W0$   $%   9              "  0PX  !X;"]W
M;W)K<VAE971S+W-H965T,C$N>&UL4$L! A0#%     @ >DII2PN6 72V 0
MT@,  !D              ( !(#H  'AL+W=O<FMS:&5E=',O<VAE970R,BYX
M;6Q02P$"% ,4    " !Z2FE+5'J,>+<!  #2 P  &0              @ $-
M/   >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( 'I*:4L7
M!Z@)L@$  -(#   9              "  ?L]  !X;"]W;W)K<VAE971S+W-H
M965T,C0N>&UL4$L! A0#%     @ >DII2^F\-"JW 0  T@,  !D
M     ( !Y#\  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4
M" !Z2FE+^.'2G+@!  #2 P  &0              @ '200  >&PO=V]R:W-H
M965T<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    ( 'I*:4LFX@(Z/@(  ,4&   9
M              "  <%#  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L!
M A0#%     @ >DII2YBD"5T3 @  M04  !D              ( !-D8  'AL
M+W=O<FMS:&5E=',O<VAE970R."YX;6Q02P$"% ,4    " !Z2FE+ W6,4MT"
M  !B"P  &0              @ & 2   >&PO=V]R:W-H965T<R]S:&5E=#(Y
M+GAM;%!+ 0(4 Q0    ( 'I*:4L"YH7$N (  *<*   9              "
M 91+  !X;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ >DII
M2SG]>@K< @  @ L  !D              ( !@TX  'AL+W=O<FMS:&5E=',O
M<VAE970S,2YX;6Q02P$"% ,4    " !Z2FE+9QO;DP4"  #/!0  &0
M        @ &640  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0
M   ( 'I*:4LAB[S)+0(  &H&   9              "  =)3  !X;"]W;W)K
M<VAE971S+W-H965T,S,N>&UL4$L! A0#%     @ >DII2P1/X-+Q 0  - 4
M !D              ( !-E8  'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q0
M2P$"% ,4    " !Z2FE+O9?..!0"  "O!@  &0              @ %>6
M>&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( 'I*:4M/QYX0
M P(  $\%   9              "  :E:  !X;"]W;W)K<VAE971S+W-H965T
M,S8N>&UL4$L! A0#%     @ >DII2ZY=!4@_ @  \08  !D
M ( !XUP  'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    " !Z
M2FE+&'E_OOL#  "I$P  &0              @ %97P  >&PO=V]R:W-H965T
M<R]S:&5E=#,X+GAM;%!+ 0(4 Q0    ( 'I*:4L_DK?5#P(  .(%   9
M          "  8MC  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#
M%     @ >DII2ZZI:HK[ @  + T  !D              ( !T64  'AL+W=O
M<FMS:&5E=',O<VAE970T,"YX;6Q02P$"% ,4    " !Z2FE+EOJ205L"  "X
M!P  &0              @ $#:0  >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM
M;%!+ 0(4 Q0    ( 'I*:4N-8W8Q:P(  /4(   9              "  95K
M  !X;"]W;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @ >DII2T]4
M47X8 @  \ 8  !D              ( !-VX  'AL+W=O<FMS:&5E=',O<VAE
M970T,RYX;6Q02P$"% ,4    " !Z2FE+P&Z0B[T!  #8 P  &0
M    @ &&<   >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    (
M 'I*:4MO'XXB#0(  )4%   9              "  7IR  !X;"]W;W)K<VAE
M971S+W-H965T-#4N>&UL4$L! A0#%     @ >DII2V<#QSH0'@  ^H@  !0
M             ( !OG0  'AL+W-H87)E9%-T<FEN9W,N>&UL4$L! A0#%
M  @ >DII2WC++J0\ @  7PH   T              ( ! ),  'AL+W-T>6QE
M<RYX;6Q02P$"% ,4    " !Z2FE+_J"NU;,#   #'@  #P
M@ %GE0  >&PO=V]R:V)O;VLN>&UL4$L! A0#%     @ >DII2V=M&I;  0
MO!L  !H              ( !1YD  'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR
M96QS4$L! A0#%     @ >DII2S<9?<BX 0  VQL  !,              ( !
M/YL  %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&     #8 -@"L#@  *)T

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/**
 * Rivet Software Inc.
 *
 * @copyright Copyright (c) 2006-2011 Rivet Software, Inc. All rights reserved.
 * Version 2.4.0.3
 *
 */

var Show = {};
Show.LastAR = null,

Show.hideAR = function(){
	Show.LastAR.style.display = 'none';
};

Show.showAR = function ( link, id, win ){
	if( Show.LastAR ){
		Show.hideAR();
	}

	var ref = link;
	do {
		ref = ref.nextSibling;
	} while (ref && ref.nodeName != 'TABLE');

	if (!ref || ref.nodeName != 'TABLE') {
		var tmp = win ?
			win.document.getElementById(id) :
			document.getElementById(id);

		if( tmp ){
			ref = tmp.cloneNode(true);
			ref.id = '';
			link.parentNode.appendChild(ref);
		}
	}

	if( ref ){
		ref.style.display = 'block';
		Show.LastAR = ref;
	}
};

Show.toggleNext = function( link ){
	var ref = link;

	do{
		ref = ref.nextSibling;
	}while( ref.nodeName != 'DIV' );

	if( ref.style &&
		ref.style.display &&
		ref.style.display == 'none' ){
		ref.style.display = 'block';

		if( link.textContent ){
			link.textContent = link.textContent.replace( '+', '-' );
		}else{
			link.innerText = link.innerText.replace( '+', '-' );
		}
	}else{
		ref.style.display = 'none';

		if( link.textContent ){
			link.textContent = link.textContent.replace( '-', '+' );
		}else{
			link.innerText = link.innerText.replace( '-', '+' );
		}
	}
};
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
..report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

..report table.authRefData a {
	display: block;
	font-weight: bold;
}

..report table.authRefData p {
	margin-top: 0px;
}

..report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

..report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

..report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

..report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
..pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
..report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

..report hr {
	border: 1px solid #acf;
}

/* Top labels */
..report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

..report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

..report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

..report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

..report td.pl div.a {
	width: 200px;
}

..report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
..report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
..report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
..report .re, .report .reu {
	background-color: #def;
}

..report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
..report .ro, .report .rou {
	background-color: white;
}

..report .rou td {
	border-bottom: 1px solid black;
}

..report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
..report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
..report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

..report .nump {
	padding-left: 2em;
}

..report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
..report .text {
	text-align: left;
	white-space: normal;
}

..report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

..report .text .more {
	display: none;
}

..report .text .note {
	font-style: italic;
	font-weight: bold;
}

..report .text .small {
	width: 10em;
}

..report sup {
	font-style: italic;
}

..report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='UTF-8'?>
<FilingSummary>
  <Version>3.8.0.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>128</ContextCount>
  <ElementCount>184</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>32</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>5</UnitCount>
  <MyReports>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000 - Document - Document And Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-document-and-entity-information</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>001 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Current Period Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>002 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>003 - Statement - Condensed Consolidated Statements of Income (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-income-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Income (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>004 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>005 - Disclosure - Note 1 - Basis of Presentation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-</Role>
      <ShortName>Note 1 - Basis of Presentation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>006 - Disclosure - Note 2 - Supplemental Cash Flow Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-</Role>
      <ShortName>Note 2 - Supplemental Cash Flow Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>007 - Disclosure - Note 3 - Fair Value of Financial Instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-3-fair-value-of-financial-instruments-</Role>
      <ShortName>Note 3 - Fair Value of Financial Instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>008 - Disclosure - Note 4 - Share-based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation</Role>
      <ShortName>Note 4 - Share-based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>009 - Disclosure - Note 5 - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-5-inventories-</Role>
      <ShortName>Note 5 - Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>010 - Disclosure - Note 6 - Preferred Stock</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-</Role>
      <ShortName>Note 6 - Preferred Stock</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>011 - Disclosure - Note 7 - Income Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-</Role>
      <ShortName>Note 7 - Income Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>012 - Document - Note 8 - Segment Reporting</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting</Role>
      <ShortName>Note 8 - Segment Reporting</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>013 - Disclosure - Note 9 - Other Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-</Role>
      <ShortName>Note 9 - Other Intangible Assets</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>014 - Disclosure - Note 10 - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-10-income-taxes</Role>
      <ShortName>Note 10 - Income Taxes</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>015 - Disclosure - Note 11 - Plant Consolidations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations</Role>
      <ShortName>Note 11 - Plant Consolidations</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>016 - Disclosure - Note 12 - Related Party Transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-</Role>
      <ShortName>Note 12 - Related Party Transactions</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>017 - Disclosure - Note 13 - Material Overcharge Settlement</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement</Role>
      <ShortName>Note 13 - Material Overcharge Settlement</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>018 - Disclosure - Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-significant-accounting-policies-policies</Role>
      <ShortName>Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>019 - Disclosure - Note 2 - Supplemental Cash Flow Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-tables</Role>
      <ShortName>Note 2 - Supplemental Cash Flow Information (Tables)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>020 - Disclosure - Note 4 - Share-based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-tables</Role>
      <ShortName>Note 4 - Share-based Compensation (Tables)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>021 - Disclosure - Note 5 - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-5-inventories-tables</Role>
      <ShortName>Note 5 - Inventories (Tables)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>022 - Disclosure - Note 7 - Income Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-tables</Role>
      <ShortName>Note 7 - Income Per Share (Tables)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>023 - Disclosure - Note 8 - Segment Reporting (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-tables</Role>
      <ShortName>Note 8 - Segment Reporting (Tables)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>024 - Disclosure - Note 9 - Other Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-tables</Role>
      <ShortName>Note 9 - Other Intangible Assets (Tables)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>025 - Disclosure - Note 11 - Plant Consolidations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-tables</Role>
      <ShortName>Note 11 - Plant Consolidations (Tables)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>026 - Disclosure - Note 1 - Basis of Presentation (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-1-basis-of-presentation-details-textual</Role>
      <ShortName>Note 1 - Basis of Presentation (Details Textual)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>027 - Disclosure - Note 2 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-2-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details</Role>
      <ShortName>Note 2 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>028 - Disclosure - Note 4 - Share-based Compensation (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-details-textual</Role>
      <ShortName>Note 4 - Share-based Compensation (Details Textual)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>029 - Disclosure - Note 4 - Share-based Compensation - Allocation of Share-based Compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-allocation-of-sharebased-compensation-details</Role>
      <ShortName>Note 4 - Share-based Compensation - Allocation of Share-based Compensation (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>030 - Disclosure - Note 4 - Share-based Compensation - Stock Option Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-stock-option-activity-details</Role>
      <ShortName>Note 4 - Share-based Compensation - Stock Option Activity (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>031 - Disclosure - Note 4 - Share-based Compensation - Option Pricing Assumptions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-option-pricing-assumptions-details</Role>
      <ShortName>Note 4 - Share-based Compensation - Option Pricing Assumptions (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>032 - Disclosure - Note 4 - Share-based Compensation - Restricted Stock Unit Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-4-sharebased-compensation-restricted-stock-unit-activity-details</Role>
      <ShortName>Note 4 - Share-based Compensation - Restricted Stock Unit Activity (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>033 - Disclosure - Note 5 - Inventories - Summary of Inventory (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-5-inventories-summary-of-inventory-details</Role>
      <ShortName>Note 5 - Inventories - Summary of Inventory (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>034 - Disclosure - Note 6 - Preferred Stock (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-6-preferred-stock-details-textual</Role>
      <ShortName>Note 6 - Preferred Stock (Details Textual)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>035 - Disclosure - Note 7 - Income Per Share (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-details-textual</Role>
      <ShortName>Note 7 - Income Per Share (Details Textual)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>036 - Disclosure - Note 7 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-7-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details</Role>
      <ShortName>Note 7 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>037 - Disclosure - Note 8 - Segment Reporting - Net Sales by Market (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-8-segment-reporting-net-sales-by-market-details</Role>
      <ShortName>Note 8 - Segment Reporting - Net Sales by Market (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>038 - Disclosure - Note 9 - Other Intangible Assets (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-details-textual</Role>
      <ShortName>Note 9 - Other Intangible Assets (Details Textual)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>039 - Disclosure - Note 9 - Other Intangible Assets - Definite Lived Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-9-other-intangible-assets-definite-lived-intangible-assets-details</Role>
      <ShortName>Note 9 - Other Intangible Assets - Definite Lived Intangible Assets (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>040 - Disclosure - Note 10 - Income Taxes (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-10-income-taxes-details-textual</Role>
      <ShortName>Note 10 - Income Taxes (Details Textual)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>041 - Disclosure - Note 11 - Plant Consolidations (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-details-textual</Role>
      <ShortName>Note 11 - Plant Consolidations (Details Textual)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>042 - Disclosure - Note 11 - Plant Consolidations - Restructuring Costs (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-11-plant-consolidations-restructuring-costs-details</Role>
      <ShortName>Note 11 - Plant Consolidations - Restructuring Costs (Details)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>043 - Disclosure - Note 12 - Related Party Transactions (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-12-related-party-transactions-details-textual</Role>
      <ShortName>Note 12 - Related Party Transactions (Details Textual)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="ufpt-20170930.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>044 - Disclosure - Note 13 - Material Overcharge Settlement (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ufpt.com/20170930/role/statement-note-13-material-overcharge-settlement-details-textual</Role>
      <ShortName>Note 13 - Material Overcharge Settlement (Details Textual)</ShortName>
      <MenuCategory>Uncategorized</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>ufpt-20170930.xml</File>
    <File>ufpt-20170930.xsd</File>
    <File>ufpt-20170930_cal.xml</File>
    <File>ufpt-20170930_def.xml</File>
    <File>ufpt-20170930_lab.xml</File>
    <File>ufpt-20170930_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2014-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/us-gaap/2017-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>62
<FILENAME>0001171843-17-006795-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001171843-17-006795-xbrl.zip
M4$L#!!0    ( 'I*:4ME[H5N^74  (J$!P 1    =69P="TR,#$W,#DS,"YX
M;6SLO6MWVSC2(/Q]SWG^ Q]/S[[).9+"BZ[)=/8XB=.;V4[BM9WNG4]]:!*R
M.$V1:H*TK?GU;P$D)5(B*%"\RL*<[AY9(H%"5:&J4*C+/_[7\]*6'I&'+=?Y
M^4(9R!<2<@S7M)R'GR]^W/8O;S]^^7(A85]W3-UV'?3SA>->_*_W__4__O'?
M_?XOR$&>[B-3NE]+=XO ,9'WR5TBZ?]]N/E5ZDNR^E:>7GZ5?MQ]E%19F?05
MI2]/^_WW_WB^]VSK+?FO!! XF'ZT?KY8^/[J[9LW3T]/ _+-P/4>WJBRK+VQ
M' *#@2["Y_F??&NX@>-[Z\T;]&F,C,&#^_@F^O$-A4Y6^IJR>2WP/$ %Z[WH
MUXP7361EOP,_D,>'Z<?1L['(?I[\0EX8IU^PG$>$_>Q7PM_(2]K.2]@=JLHD
M#VWA$_$+MN7\F?,T^?E>QQLD.[IEX&R8Z$\$)"4-DN,Z3K#,GL/TO3?^>H7>
MP$-]> IYEA&_ARTC>R+X(6,:[*\\QO/P2\8+?LC')O!Q"KB;3[]\MF#=#WA@
MN,OXZ6"^\E./D2_( Y0SY)DF;Y[$_0==7VT>GNOXGBXV^B&#E0+?8])@]@9^
MO4CL'G.'[:+GQF_"'S>/[E'V2://*K/9[ W]=?,HSGH.QE3>_+^OO]X:"[34
M^[O;[1E;1=X"22))_R"SOL7TIQLTER@4;Q<>FO]\0?#9CW$Y>,;F1?0SX8^?
M+["U7-GHXDTX#FRQMY=+Y)CPK__9UA\DPW5\].S?D*',/V(4RTKT<=8G!++,
MGR^,OC*\>#_7;8S^\69OG.WP'^G.]S];V-#M?R'=NW+,3R #B\P$$_7[B@J4
M#J=BC;F=]9-K!,O-(]>P'USS,WR'"RU0NWC_?[5P2N: K#D)6,5G5"_>DV^S
MYMP,N#]C",X1B%64<+[PV_2LJ4'WY[P#=BHTE7SQ7I'[_S<]"1EE._:5XUO^
M^B-\[^GV%Y JS_\'K8M, NB3X7\S9:B,QN%,F6/N3>DNEZYSZ[O&G[<+W4/X
M>^!3'0[B*S6_]<=&+X\O)!,9UA)VP,\77[Y]CF&874B!8X6/4RW=QW3(B_<3
M=3P9C]447#D3[P$9<OT-6KF>#[_?^KI?C+W&%^__A7!J_LPQ=V<&.8Z\C\ &
M#ZY7B!ZCB_>7AH'LR.JAXR2G3PV\.^L->K P4,WQO^G+8KQV\?['YVOI[NKC
M__[V_=?OOWRYNI6^?/N8G#D]^.[4O[DVV#FZ%P)8",>3B_??W.1,.V/M3O4[
MLNW_X[A/SBW2,1B,YA>, ^05F7*Z.R5CS.W4=YY...QVO;QW[2)3@40D"B:<
M+#5*.#CY\>VU#6C]Z#K8M2U3]\%4_@02S'9QX*$[F.B##>S./RL>PW[68.;_
M:?OO3.L1K.NU#:K,M/#*UM=O)<L!!8?>27,8L3_7EY8-7_K6$F')04^2YRYU
M)_H56_]!;R5%7OD7__/!?T=&]/5[&[@+4+;2S="0AXG)WWBE&_'?T9Q[P[R3
MEKKW8#E]WUV]E9)?W+N^[R[C[^"+)\OT%V^EB2ROGM_1Z26) N#%H\/!PK=
MU/=UVWIP8 WN*GR./F;&CT4#J9/$*@[BY0E9#PO_K02D,L/97W&]1W^$[WR
MR=@9RW(6H"3\])..ZX%,#*=0%#+'&YB$_/4Z^0?][)N)Y958"N4X*<5R.&^R
M-[ZWQ?\;R@&;WQ+31Z2D-)1D^E]U,M!&*Y_!3OIR]<ZYQZMWR<E+CUITK+R!
M"M*;OG<#9R0O,/S (^KPHXO]?>16 M_QZ&,-^=W9?;T&+I>^ZIZQD)1ICYS:
M1STI";Z_0("RY4IWB.9<+BV?:$+?E9;N(X(AO2?=,Z4GRU](N@20.>0W ^0V
MDMP5T9N$ER7=!]BP=*,#(+K3D[Z!7/LG:!.T[M&7? EL!B)2HPV0>MER8$CR
M.KQU'WAKHNM[ #3&NK$(,/)]W)/F(.MLT!UT(!>@]B2B0Z.O+80'TMUV*914
M?WN&Y<[>86H'$8^(]*23V22P8U8P,2)+T:F@MYP 5@W/$9R31^X##)\P71E!
M4;2R-!@^:\)5  BG*)K3AQJ09-JD!Y9EDK)]_%< )EM_[KK^%FY86P+-(=)T
MP[<>*1(!-;8>,8"_L'""9 1_,!QA$CBA^6C0Y7V58 4)#&"7K,LUZ,ITVTXS
M'V6]_ZV#<EM8MKW'>(30']9S"]DFBRD)XLACVTD,T)0Z#+T_T2\(CL_(!^.'
MS>* _#T:;0!, A3/2"=X0@GJ$+YM0+)\0@9:WL->U)0LX1)ODI4.AH-N)Q:?
M@)SNRH;A_F< VUR3*<R3P7':HA5FMASJJ@0V7JT\]QF.=SZRUPV@["=UD#*6
MP&2T;4(]JPD5!H>$E&@CUK.$GE<(I#C=6B"G'&2$[$1T%>&ZU/9*2S+0%E\<
MPPY,P"2\346=OB3.8RKC&D>N,I5WQ7<HBHE% ^( P>YPUPA)&($8()XVV%-K
MXJ%(21ZR?(/8/[T6EC 8L_@#3 FRC@V]",3;/S!V#8M*34JY1]V(EKU5N[VD
M?$[*/UCCBAQ*4"2H&U^U-MXG'*S8I@:2CSPX6"7( J+<A7DD0\<+"2P$$(:1
MW&YA.\M9Y*I0JR<'HB/]=[\O?29D>RN]N=8?D-3O5SM+]\2UAPS7(T*&,//<
MM6WWB;"VESJQ4-;8VP>')!BQS1LR+OV%A]+REVZV^B=VK!VYOX0'%]**NGZQ
MA!R"V@;,A5NT\B,[)[(9]LR<^J$@5X<I)GU%-9<;8)@?OW[;97L\:Z"M:Z6(
MA^N>[">O;\!>TE<8YH@_O4L#%/T;@G2<>ROTD&5YN/:<;,13&+]F@%9&7A8F
M4^XDYEA[/J3#0P$. %7.SQ>3"_YAF5#?D>TN?25;#4M79(^=$O3?R D^#_C8
MN78:Q'\G19MBX[!5LK=I33A])T4[+I[^@ZT;?Q(@)*J,*"@I^7C>JZV<NS+@
MYH"1Y1-MB2Y:$W0A>OD<%CD^AT6>)R6+2 ^8! 9]\-S ,8D]Y'IO)>_A_I4J
M#WNJ-NVIH]'KG.NYH?SWC-M"%MYN-@X&-EVB@94BX_(HR<2X^6C-F#=)&QO-
MPTE_.CR76G8RCW#(L==:!4\&_?R+R]KP6)!X@BF:9 IU)+A"<,4N5XPUP16"
M*_9=2]UCB[*FT.\+RT=<)ZQ=UE('ZBCVY1)W?0%+-&<H'D;-Q&DXAF2ZP;V-
M*N#0TI-TT+2I#G%'>6T$V5LR7@3=7Q;=><T30?>717=N Z0)PN=%W]9V&];E
MF[JC!J(^Y[.\I);$+76"AVAXBX<,6\?8FEMQP!6)D0#$.!B^V ;&PQ\DQ0>1
MR"82//O%,4C^L8ZE;8"MD7FYL?F9'#T\=TF_)D/<ZC;"S!"_?[SA3PE)II!X
M:(Y('!Y-C?ID/5JP%!-_"PCZO\^W/Y.DJ>LH&OB&H!!_(GD]UGT :_WL>E>Z
ML: /?9\G<JU8Z5TD#T6>]66MKTP3'[,SO51-T6;:6-[+]UK!HB[>*_'2&UM*
M"G^N@9")/P.EPL=6-*CEZAEYA@4\\0WY?!DXVY7WM>3"E7$RT2W*ANX'V+QX
M/]9($MYF^8<A*0WX> OX^"#@$YD%^$B='0WX#7JD,?#X&EC<6(?_/2+;B0 Y
ME.&?NO*=JA^Q3-P99]Y+!4,=E_D2$94EWKJ9,?0QBH[W8O"EA?Z(I'N$'!C*
M1&'V01-&PYZVXE%*'TGTYF?;?<(T%\9UP,A9QC"'E21\:8UT3UIY",,?801H
M,IY7)R& R LS;&"WQ_D"OOXLK5QL15DU#DW$H-&B*]TRZ<.&OB)K#0-H30N4
M8)S[LE6R42@PP,HW$3P3V'ZHFG42LFMX80!KM*:%[CR@,'-F'C@FC=>R0M4,
M \$NA)GJ)]9/FC+:"[:E4;]$F#(@U@W#([D]FWCC1D%-A]->)N!*L0; =)C(
M:2IME]S4@I2L0&<XB"WV,4X"Z3&)4*><0DA$OH<S<\AN0*0H<#N5'H;^"JP5
MV60]D.IAV@M&*2'1B#GOIM>X7.D&;'M*L4?+#;!-PGI)8@Y0 N",-P)E1#!U
M302" A:\)+'<'LEZB7@R\;Y%\IV!TI:C.P9Y!,?RA6VI9EBM^3H]H?S#W/UK
MX"YBIT4&PK5G&>C2,>_TY]\M?[%P;6*DP0/TZ0_ 6B8)8X9=$T>P%S+'=@Q1
M-<,0C0L/C$=*;(U6 6GM"\\WY_86KC$7+G=WU9<DS^0!?=6]/Y%/WRW- $JV
M7=L'0=!/XT4=#X:C"G&SOQ@6MC@'+(B6/RY)%BTI)G+Y;.$^/;]:AA^=N7X
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
M'7<.AIMJK.R%K*K'HP1*CED<!W[B+D+;T-Z/NFTC\\.:= M*/]L\KMAQVO)
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
M^KZ[HH;4YHOXB"X?'\\"8^;<]Q-;C=]#D0J8"%W;]1L)J8/(ZWP71XF5?''
M<D(2<)A$62QOHCQ/Q[YM?("L#=G>H=ZRPE7"I@R/5GMIC7L9F%N7 "/(U-UV
MA1E(L31ASQ.L#L^4<CXD)Z"'+)/,00(Y4V DO!@9[T61@S1'-;1PZPI*)W_5
M$I#>X7/='1?C!#@\=I 3"C )X0?@R U%X4<'#O%[G$-3R^@-0Y0(NXTX)140
M_(4;8!@$OVZJ>I:(A>2*A>2]6-P$P#4;-\DW[2:6<-)$..7=@N2=?R7>3BQ=
M.>9N6&72/W&N./H&2OQ(%!6Y+^5@^G,+]BUXGWNRB\P)9WTYBSQ/2C8823UD
M15+_OFLH,:W=7F@BL2DEHJN+G"-[ZI@S6N?%!%>?,+&46?-1UH)8Q^ZL(6?
MK2!6^\12IIS-MEY$_@+;5F$IXGU/DAG0&)S(WQ55K"&."YJKRF](B;CJ2EEY
MVFA(=>,-V 7%]RD^$10_,XIS!K4*BK\8BN\5KFD'=:WD=N7$OQ?Q&T07*B68
M6&1?5&=P:R/1W?;<>4 M)=8$#[P$'M#4,L:,X(&7P /JN$--(+N7L370LE+1
M3B( )@QK">/NW?DFI@5%H8N)B!;T;-B!B<+F<E&I^"BV9>7ZI$J=;F_K\)(
MFK#;'BG"@7LD0@9>)_$O*8<4"?*/4LE8>3'^8B=HRL*2[3[1Q#+=R2K_&[T4
M]\N+?5^)0FQ1-!6IIT> 3<1<):&FN6[U[R_']5,T#5$5UO3SV33:BSFZ1X8>
M1.7 (P(]N8%MDI0)'>@3AZ -I,]N4S41?1(<DEQ=OZ&4HY=6&W]/_IK)(O6)
ML+4D_T9[UMS6,.??[YMZN*1;!#Q-:IW7O_+_("]=J;>A?,4)Z1Z:5]=<;)E3
MVS('^CJ\F"VCC7K*3&MATXQ4DG'+F=69_,S.HV!EN%%M!H.&\>YW^O,-:/8;
M9+B.8=D6I<VE_QF17@[V+= J\%UOG7JX:":1EDP4&<FS1*)(F!BR"CQ$$W"T
M<6(]Y0%M8.7YZ4CIE:?R '=6/CJUA>>G-.TL/(_DVJFM/#\O*KUR-8_DPSI7
M'G6WN47>(]CQVP389(KL-S>JW4/+^^$[TM,E^3O)G?WF^O]"_DTROWB+#XLO
MHTV=,#+:+MY/1D-93N8WU@5W0^BYIAH>+)SH*_*<PI^D%N-K<O'^6ON7,E4_
M-8":3)B/P!<PX@?DH+GE?P:%G_SE*FJ[7BX%51TRTGPOWBORN#@;'82W&1P4
MRFA5AXS,X8OWX\G)HJ!0?JPZ9$J3X5 Y61P42K=5AXQTVXOWZO@(B5H4!\\&
MPCC]4O; GRU'=T@&TV58P]]"N*@T5":,<@07TC-^ZUCVSQ>^%Z"+-[7"F$^>
MOI:&F"VHU!U!50;*8Q?\?44;M94BBL;:A!41A0O&0D31F%OF>*)D0)E>,"GJ
M3FNZ;\N4;&N/%$Q>5R8B>3T5F'H"R>LI9T)]R>O;W@'$KQ*)"MV6OC@8MB&M
M>),W]RGFLQ_G/;M+E7#"TGR#*FN+JIZ$ V,AD8Z4AD$*Y^&HHR5!3&_[9=2
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
M<C7(XS_F"U)73NH9I^(0I#YU4BN@@31![",,BM.A,5@9\K15&M=V4#_(,NI
M'45<0]*L[G5;=PQ4N7&1F.9HY@S'D$PWN+=170Q:9)(FF;1?@C^/0MQ1CC5!
M]JJO*<H8&H+N)TOW<1F;0]#]9.D^*7.&K)CN;=UOOZQ+I3:!:A\"@1:!EM-
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
M#SXF;/\R\8)W"B%*(PAAWF11_J@.(:[S<(>\Y2=T[Y<0L#*3GZ<[TG]_OB,
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
M<'S1 KW-%LWCU&YZ0AZ2/&38.L;6W *8[I'_A) 3]]BF3;U=!RBV)!\)U8S
M\Y#C1VN15A["\*?N6ZXSV!,AT>=_O EP_T'75V]OT<,2'K]!*]?S0=Y_LK!A
MNSCPT!W(B ^V:_SY_K_^AR3]8_N"#=AX^ 4YR-/M2\>\-)>68V'?TTE-JZOG
M%4DK)T 2(7.#YH#(/TB7S+X,_RC1QUE?DR\D$QD6X ;_?-'7+B3+_/G"4#5%
MF\GCV844.%;XNH7=H0HO!=B\>#\:SS19EI,+X(&GFC6,MVL8'US#1&:M82RK
MD];60!; 38>)PEJ#,I7)&MHCA,)/")6]B*&LEE_$0O?0!QTC\Z.[)+_3O5<.
M\XHV9 $]'>Z G#G]<2 6P:NBC9@@3I2*0+ST/-UY0$1$?5AO'[G6U^2KRR?=
M,Z_^"BQ__<4!&@7D2_P=I*)WM]"=[RLR!/X%AO#Q%^<Z%) <=/F##GRW7J'+
M9POW;Q#)8C-\9-[Z( ]_P)KQS>V/KU20)Q'TY=OG)(:T89+SGN\]V^ICL@9\
M\5Y5)Y.#&*I^]>W@_'>J'Y%Y^0B[Z@'1'S_I/OJL6]YONAUPB:G*B*)ELVT?
M%&A_ATC#01M$.HBNIJCXS74> <W(_!90FR5))2L4$HK:UY3*2",S]\MP/!I-
MFR#%SIH[@^JJ=\&8B>K1:";/S@'5Q<12+0S/L*^R9)$\D$>-4J5[8N@(@E6]
M;29%"#8;GR?!?J/@M&)Q#9EB#4QJI1&QEEY].SCOEL7%."AD;1IM,!HV3Z2F
M=LYFO$N,@V4(R=4S\@P+HVO +;< NUJN;'>-$*5$N*3#=- *"*])-=KFX()K
M1>P*$6[]9#U:)G+,&R#H$6R?@^HD;D=[@F<5>.A">L9O'<O^^0(8$5V\:6"Y
MO[DV#&,#^U>_X"UO#=.KWQ>[=/7OY8$Z4VKCHZP%UXCA&PO_^=E#Z MI:@_R
MHT'\[EOK,7YE95J%P.1=;T7H_9X2!>1FZ<"Y)T^NJ>RS#"!G.JE"Z[, K@T?
M.RJ)3TOD8HE?^BN3@:K5@K2\5=6"2K3QJMRYOFX#*WN6@RV#VPC*0:DZ8GI
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
M;_P)5_2!3/<6W?8*C)" SNQSWL%%+,YA0M2-;GLS2^?;1.$7H /]<MY%O_P
MB?5' !XIUF?"@8-CG[% 7HAXF"J8/K5P_L*$SR4+;IB:NL:J;7VCP$DPIXGQ
MHE79A\W )/;(56U;[]@3EZBP?HG:./V[-,Z5MMK( >Z>X1[PT_\E$8\%WE3@
M/A_I1'<>T/.#0&6JGS\BI)L).Y3K/I8A#Q^[89#<=^G+GUP-!G&('0P:Z-9?
M\9F*L[F/6F3FN^&UQCRN%=@(GV3;-M-M=IK6I9>,W&N!"9 $_M%2W/K-TI(R
M!]5B\[,\L7(XZ0X8WJ J*$ 7MMB\O.@/U!+++[J< 5K/6[/Z\N:9,O.^4@?;
M,%+['?/<N)5;9?OREP_5=,^$_.UXXE7?O5+BQM>5_8O%P!*:U7B]'1\Y>[%&
MB?_<R?D5?&OSW']MAUHQ_Q6\:/N@>VU/6@OX%;Q9\D:3VDXLX_LK^,YR$K%@
M\':\4>7] "5^J<3JK7K($B,KB-Z.U07OE"XQO8CR3=OOX*'HZJYS(?3M>+WR
MX[XE#JW.[VW[RK*+%I*^'0^X>*RSQ%-.1/P*'K5$E@6#-^$-^X\JK79(!1X_
MS"?I@P%8-1I2^/E_4$L#!!0    ( 'I*:4LR@7VC> H  #J-   5    =69P
M="TR,#$W,#DS,%]C86PN>&UL[5W=<]LV$G^_F?X/.O69EF1?+G4F;D>6[8QG
MG-AC.TW?.A )29A0@ J LG1__2V@#TLQ 8*41$#7>XEM<@'N;X']Q)+Y^-ML
MG#:FF O"Z$6S<])N-C"-64+H\*+Y]2GJ/O5N;YL-(1%-4,HHOFA2UOSMUY_^
M\?&?4?0)4\R1Q$FC/V\\CS*:8'[%QKCQQ^7C72-JM$\_M,^[GQM?GWN-TW;G
M?=3I1.U?HNC7CRFAWS^H?_I(X 8P087^\Z(YDG+RH=5Z>7DYF?5Y>L+XL'7:
M;I^U5M3-);FZF\CU@$WB=ZW%S37IFZE?SC1MY_S\O*7OKDD%R2.$23NM/S[?
M/<4C/$81H4HBL>)%D ]"7[QC,9):C(40&D8*]5>T(HO4I:AS&IUU3F8B:8+4
M&XV%Z#A+\2,>--3/KX^W6\_,!A-Y$K-Q2XF\?7[6;BFJ%G L\1A3&5$F<?0.
M0$SA+\8)%I'(QF/$YQ$;K"_/HP1+1%(!(/4S1QP/+IIJ]F@ULV+KYYTGEO,)
M["M!QI,4-UL;*&.4QEFJI7H'?R_)%9I: "_XPC.)86,OQ;]B+67QEE@V=^$
MB;Y>TDQ$0X0FFJ\63J587=$"C-J=Y<K^O+S\Y^V*E1M"B1CAY!-CB?B"Y?W@
M$0O,IWC-7(KZ.(7E*#]R 2M5VY7QI;QK@@7\%/&_0>*1T4?T\AEV#R<H+2?^
MPH$>07UC_/LM?> LQJ(<JN*1-E@;:MSE<8-Q<!,737 U+Y@,1W+I=Q;S(!Z_
MT>]M$[FD:&D-5G-&!-1\-7[ V;A@5['JRP;/=L+6"0F;Z^*Y@CL-"9RKN7L%
M][&5YUOVZEO/(R9'F(-G@2AA2/HICI 06 KP, -@&$A2,L5)+D$5G[N_!];C
MB_?-;YT^^D;S=Z?8NUUSU]7,=>,X&RLAX:0[9ER2_VAY&:QK]8GJ]R$67C]Q
M)DP.Q'68#Z>XS0Z8CNM9G&8J\U&VY(6DJ=$KN@\-U2V60,"J+F<%9QD=$V0G
M):W+[\0,[!\58#+A-\%2DBB^HC6!6&0Z, 6.,HH -]QV]S([37]PG[('[NKT
M(#TF($[1$<L32Q.#F3%0U6\J/R%"[T"[[^D32O'] "+)">9R_I B*J__RLA$
MR=B HMQ@?^ >L5;D9W9')!GJ+?F$I4RQ S:GL1Z@*9,,\AX0(X"W%#X\L=)+
M)<<;L-@]1B6A&5CE^XFJ+8(LQ24>,(X7=,]HAL7U3'($WH-0Q.>WH./B"X.[
M5()= /Z&8*DQQ\)<:SCX$WV)$9B]GDV4+;S$%)M7OH#:2SRF!;CDQQQZY5'Y
MJ:D(J?1[(<G"'6<GKQ\ Q#^O:F#@.I>F?E:7:JF4K(!A"V7];#_"^O(LEAD'
MAGHCQ(?&.IN-M'[&E:,&GS;%-,/F@JV!R@.[6%O@Q5E4VJ5)-QFKHI!46V&*
M[0:EW. PL[D\+\X<%RJH'*T B#4@=@72K@.(S0ZQ,FH?4KW9$52%H#BDPK,K
M2E/D[(KE+" L%5(T5YC_"DC=JMCZ"F;E@"6LPZ<MK&S,&I0#J5U"EFPD)*-6
MLUP*P_"0M"H_R6$>J@5!J9*C6 HJ"+6>NKY?E7AA82(!X12.%G+"282FL%A#
M'-%LW(>[;+ @$%&FJL:213!PDL$D%,L(3ZJ>PQZ2A7I.9@^/H-Y^JIAK<"CM
ML?$80E#-<%=*3OJ91/T4/S-][1(!A@<T5\1=SA$=+DX.S/6S/4U<?\+\;;F>
MW<5R?M&K>3^X(BFL7;( <I])W?,)QLH@@8JS! /W#8>P4"0N!]8^1YC5@JKK
MQO8BC9 2VCU(8M]FH%9_V>E$$Y7B;1R:JF@FXIME";@I*K<E[?"$>KS=S@S6
MZ<PN,T$H%A!=$JEJ8:)CL%9FPO_)*K@_6VKEF+DOB.<FD3Y*U<L,$,UAU6$7
M9YPK:H@ "4OVV"U2\CF^VD8JL5FG(>C&,<O =X [41ZFMV#0H%5VXOH- O##
M,YS<$=0G*9$$BT+^[?1>(*P:OZ[PA..8Z+T(OZ=86R&ZU1"V54^%>T4M,_N>
MWH. $M 08 VE#X@DM[2')@1")!->.[4']G5[GXG;K9N^F"O0F3R:^EGM(3&"
M#:E^J$TY1:F*>+NRASB?@\?\':69Z6"VU%@/T"#:)[HX+A27NB@XQ#0FQNC&
M880?&)"T2!9_MRZ&@:Q^AJ_P ,.N!OF-5=5Q&0,L7,.\ER(AR(#@1)5;K1I2
M>1Y_D)_1;,,).B,L&N:A+]'>7E^FA?[ K72J;R+&8'P@<"IJI,NC_5N^UO W
M?X5T0]D,?.90>&43W)$V[2.60N8LE+N5\V+>K<.\ K('1R%E$G>,#I\Q'U_A
MOBS@VDSIH2-3O;RWM!)%?LA*ZXGU,GZT>$#](![XTKD71FX62B]L3R##6QX8
MV_>[E=8'ZX8DV_;VH]N@@,"8?:O+$!_%Y57$I:(5^X:RTOI@72)"<7*-.(4
M2VP5?08D-KZYX3[00RNV:Q@14N#PS#$2&9\7VE(S89BG$_E5(%9*)4(ZKRW$
M8TX 0FK&*X3AX/I"ZC)V6);"%+E".[$_/!5*DR$U/#JY<E8MB@FJA;$LT,.<
MNX2T]#^<7;@L\C[>&/* )[]@%9X;R+>790MQX;F#/%P.E8#P_$"NH3 ?KX6D
M[99"UP:8PL)22 KO!LFEY2$D4^",RJ41(M =F+OU]@2EYIV7!Z7<:5N@F\\&
MK.)!:4B>J0"I:Z$W) 6SU%&V$TI[$3@D17.#Y-0S%)*:N<$J6]RKH%Z'R[?<
M(!95T4(* =T0V;MC0C(7SJ>W^4XZ7*-1!9AS0U9(9J0*T*)BN^?N\^VO],5(
MC*)!RE[$P3Y3:'M$&)\J+.;0K=W\K:C4E3_UIZ!QHM]GUIOC?J)?>[F>81X3
MX"WG'+#LN%"Z31]TU[Y^3PL)?(47/PTG/%6F\-<06.Z+;XZC?, IKK4:,;D/
MK1_8]4Q]<!TDO12Q5IOUNX";"=4-H0@<#QUV8TFFMMZQO<P9LBC6WX[8HR@L
M<_K\FNH5$1,F=!IS/["^<^ TQDN?[)9)O*4_5-X,<)S'!0+IA[);&52&H2$
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
M[T:\J8)8PK\MQ"OGT/[G]Y^4A;:L^O90T7-3 )J?4_85/SS1>\5H!C_&U?U
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
MB*2@0P.)!=I\6E/CP&Y4-U9"'9I<F@L76<PPXO@45_^_R$9Q#"LXN23HCJ3
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
MG*09=@_ [6OF,2O!H72EM)<$CW(X6^Z*7.S,6_KRN-HZS23>^?8&'G!:P@%
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
M05 JGU_6IH7IO^"$Q*JY]S;HH7X!S6+8I*S4**X)_PO4M'@F]J8R2=2TV\$
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
M$^>L1$Z2=^T:ZA!L^?]#L8VW%,'O C$T[<;8::M'SOE95):E;X$X&O2Y^2_
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
MJ= 4,OAI?VCDFE8AX-PW#2">9-<S2IKG;X#FSFAP*M%!);OQP4*]82R(]U@
M_TI+YD^CZP/MMBKJN.*/M.$$L-^:-N&=+*.X#0*COZL:DM4VA%M:2WR)^91-
MOCAJ0CJ9&_P,:FKA/"DOV;'M:KG[,RQ(UW1R5W11NDGO5RQ?856D=W6%V>DD
MBE>LT=62+EEKDG._>EV5%9TQ.G'#UT^^J9M=8OE"Z>5$X6\X!M=G\^6TP3FE
MPXMXMHEN0.BR<XOTVK#]<#LJQ(>%>N-BYA+3D35-(7\-&US3_=?*><N.J$W'
M<7X"V;0<+SC'$QQG$?PYHC\WC-BQGNQ&LCO!Q'P:FOM1=L:,5PNX\WH3Y$K4
MNU4E@<4H1!!T=Q\R$H(WTGI2$/1!KYZ"H'MW5F%+LHPQ]R"">(1C8=Y(]0_Y
M;?3_]ET6E66Z3'&B_&A*NY^)KZB4Z7DXCA_]K8XR1I9:\,; ]ZNUL#-"T)=6
M^K,S\/3*D.6>/42X@GP$UP6!!2!YN_U4XN0B;Y*>Y_>G<467!O; 16X[S3LR
M]2AI$_22N6+)RE^QZ*QE"P5%'9:?PCB<S">'V./XQ /P+SB!? ;B8*S!!B;'
MR+V.7$M-0\P\Q&HB6K,]^T5.]]GKQESC IYAL.A#PK;P[9CN"U)O8-N]9F_$
MX_8Y=("M]K!PD'$>3KV'Q1!"?/H?=9Z2XCHJJC1.-Q$XS/9WX&*Q-NO!Z)95
MBY+S:"N&!ITBC@?M 4)/3^S&ZN-ZT%;.Q"^TF+%X@;ZL4GH$3DL4H;C9<L2=
M#S:J8_9C=]'7';,QW9(P"Q[BWLY,SHF%>9RHX^ 'IG-<B'5XN(6)CN[WY*'2
M%J-FKEY3\;I8GKI1S6A]$D@(46#C1.D]K>F@"401B^57U,9$@I_VY5J&=_3,
MI7@Z9A=RW!O9C"19*"M$B9D3I?DB3VIP3\H."J(V)M+\M"_W;KV6GKDT3\?L
M0II[(YN1- MEA2@Q<Z(TGV<XK@J2I[$@;D?:R$2>#SIS+= ]@N82;0&U"Y'N
MCVU&,BT6&*+&3\_Y<^$ <[7D%U72LLO"AJ8Y<0\Z=+[A!HH@)<VI-F@Q93$[
MB3J//.?<B*K1(,?!-J;Y-?I].8]!X\3"!B\.<X\HL230<\2^B*HD,1:UG_I(
M\6F_OHW)#-(8"UD[]'Q1SJ^IQUY<D'(3Q1CNZ_)2=OB5MC0Z @_VZ/P@W%)%
M_Q*M-W]"#?$)IV)+PW!R-A8,=D;;L!&Y(AI<]FM86>&.6TI28DP'VQ@:T+V^
MG&L)$$- +:3!'&8?4>))J(S<OV$(#\/)Z0,NHGO<AI+Q]S.:2;@-^IJ<=UN#
MIL]4VRTLU.#JA:0VS^MFEUO;9/8&TVD;3XEG'1BK?E2*RA_MU#A/X$W!9;3&
M\DI##DF9:I #2,Z]3BP_+Z_<%;B^D<L)U:G0-7F6IOHZFY>D'S$H.^5;@P%2
M*]]@)I44\#M2BH[WDSHQ\I7J$G,NU0T@U"%J:]3Q9-L[4(BAFN!P=3_TR8$3
M^Z_18C;@ K/LL'!*:%\NH[)CUJ;/K&+'+/9M"$>ML303._,T4:4O\9>[NMA"
MQJU?Z%$^BE<UO%<OW_/G?UNQ'NM]::*\:A2<AT/O4"S0'@[4 C%74E=#M!+2
MM&R'QZ:-U=E 8FX$4#Y-$203F#Y1S3Y RM);7*S3G&<?$*J5O*6)&@WWZ%IM
M&%74(VNN)+8&X'JY IW)V+"K'=@ :C$B0D2#K5,#PLD#1)WGR:]1S +]FH(#
MD@AQI2^,0L:E/3N/(6?4V:ZEI=_5C3"/*[<\)$OI.Z5*LMXQXJ%E1%,")$C0
MN9J\$0..>[Z";]SD'U+AZ6N\I>DE_&&/SB_.&I*(T0Q[WRIC*-'@DE^!>9_F
M:84_0*KJ"ZKR^7UZE^'3DNZ$2EX9#Z[V1IU=AKT8"IHF-=="R.$<,3QH!PAQ
M1(NV[B*[XP548=U8IE-%+/'?L\.7%W'LBCHJI$K2_]+4'3M.P?W3'0:A5P?4
M*%62*X^KQA0<UI97Y^O$[>VOD!()-L[L:=I%'HOWM2--33:T@BY=2TY#MGU!
MN("T["_-][#61F%E\YI*(Q:J(LK+B+_,8F4?GO""L<+_'G9,MH@.JZ?Z$TG>
M>FUY[^75\BV)BN1J>986.*;B+;D;T/_:R*^H3,5'JH7.R=U@@5MCA@9^Z/!,
M<#$Z'*V9SEU3#)#A!Q?L*$AXOM2[=LQ)-^9OOJP(/4%F$.I,]QS9%JVB!W;"
MW$!2.YZO@:43NB</N,B;ZBI-IKIO0W@D]0683)RGJ4GK2+:E"V2UBG+\GD3K
M4^!=08\J'Z(O99U68F75^](H69P2!><QO3T4"&"@#@=J@)AKIZLA6ED-(?=+
MGD VR#1OGRFC9OW+FI%']W2-I)R(^EG!^AQ; L?*>K/)TC!!?)IR2B;,S&Q.
M\&UU>Y@Q20B@00_V3^Y/*84]M4/6[/ZY/6"$H<GLJ!W6Y2SW*\7GRR5?WKNJ
MQ#=1A6\P,(@N\#P&IGJ/$UQ$&02>UU3PMGN-!=)ML6=#J;> P'D:4WM036IA
M!N&00?K1#B?J%?X&ZF@?ZP)%%6K@H@[OTX\6B.Z!H3!8$+MB4R^(PZGTG#_P
MT%DTDE!-X0O3G(#BGGW9 PD$$SVW.B(#_;TD%2^ T>1":[23AU6&R62H(#W$
M@(%^M:9-FYCB\ITTK::XH:&.'';H2S4.*9MHA W\%:FB3$\1;N$3U.2U1-D.
M1! ED$@%46>5[XS%O.[T]B;Z\@LU(9!8HKS$U=7R!H-/2U(I7?5#XSS&8P1<
MJP@EC-8MY4!)C)693,PY-S4=V2I*BW64OUNE>'G^B.,:]DU7RV4:XP)B^"F+
M(=NWQ/MFV(510C,]4LY#/QHXB.%!'2#4(&*Q11VF"7G17 _;BH^NJY'<PEVP
M7Z_2^Q4N*U1$^>\\Q*KE$N$#6"!PKJ\BB*1'=5:EH+94=_/HGDG_D)=]1X_Q
M&#K@Q9K+]H9LP(D/+5DT<5I0/ 3JH5$U3CID#1[6VSK:HCN,HLV&I'FU*V%V
MV&V(_&^&&D=LR%.@)0Y\2.4*)S\3DNBM<>-?3EWDQ!1\>!"!,KH'TF&7.04^
M#ZUSJLR;FEO70M'5YF6I3NE3ZY2,<O4Z0>2EK)$;Z$%J-=O@H.<RUTU!T?XH
M%MW3<GLE5P,RU,K.)VHX\K0*JD;MTW_(RM@2*V>S5O:8G 3:T?Q&BM\O\NN"
MQ+C4V]&,?SEU1R.FX-KJ V6XY-]PVF&W- J,'MK2J'(O5/*5X:?[O!;7AAF4
M7Z.LYKI3EO6:_TXS*XM-(I/3M=@ XS./2W_U;1#S_!.+MBK@IBG.W>%&/>#S
MR_)B51H&T[_8GV+?ZT)<P#O(,\S_>Y%?T9T$>]KU+MJD592-5Z33[,!XE5 E
MY,$!E]_3+15=+T@+ 44\>@9V3KU+A3#%E SFA$QG=/AUI;_]ZJM@4_9I:[R6
MF'5L<?W0 ^!\S1">TIXL$RV\.:\,AG,[LAI,F;"99083)5UZ'Z4%+&ZXM[#M
MG95$"N:<H*LL8<; G&=5VC^^?T-7IH1D6524.[_ M_/,'39]LG4RB%F:P7DM
M=3>0<2"-JZ9\U*<\K4J>%LWFNF=(Q=$BJ(DFU"EJ?W7<@6X62@:[2?'WW-9*
M4WG06#@G3;)__UI9@3WA 9T7>84A$XC$J29K/L&3-M2M^Y(_G$[C- [F/I.R
ME.CRZ5GOPS88].8LA4*X>2)Y)>"-[CQV98?XW&_..$V4-$3#N)?]S;.[#=G8
MY#UCC;U)R]_?%[@S1;XT5D9W#AH[A,]Y%">E>;2D1%':+FS%Z/N>YZ"VTLEV
MI;;C,_B,U;:U2;^2C'8#D8*^E]IARG-0W6&$WI;;AX[L\U?<D<EVO>+*9M"O
M\G97$7SC_H&4HK@%24M#Y1CHT=>3FP'2)F]NK(S X-%-1S?D 5$F$$2#1U,3
MCG2UWD$-KRG'5E05;Z"*B"37B.I'1FE&QCIWGF&D!<!]9ZB%@!B&"<E%[ _,
M2N3>IALOC]C;M.,MV'B_@38O&,P7W[Y$YU&\:CC!'A]DN$TT>Y^6L*5*$,2B
M0>JDBNSZ N%O:LFO-U&^123'\+^C:D7J,LJ3:@7>RJC! (Y+7*2T[U/T'W6>
MD@)=1T65QNF&:VYODICODG[0ZSU$7A-EG2!F\A#*R]]%=#6/_33=]VJ?3_;+
MR\GX=+AW2!:HP3(_'[KBI PZQW4X'2BJ5#V[J,HG4^-( ^03[6C/*H^H$K.'
M8DFM90ZUE)NBL=M=LHPF[?A;G.-E*LQ/H?:5:8X*>>_Z O> BSNB^\ZB1=$+
MUQ][RNYI.&8'G1$883)5*,H1,>1F /?7W;B#X$['00!E-$YD7B^G!*<XNYP
M\^;C@D(KZ)O_QE$1,+S'[=P^]6UYF#"_"OES0<KRNB#BA6R@A:'(]WKR9=%[
M)$W6I4F(#5Q5C!Z\ PJUV@Q--E'@A^^\1U7S#/ =5%&BM*5E,L::&^= &N[6
M>7&OCBX"PF'K6HSREN@RS*\HW<(K@[K8,K<2?WDID"))2T,!&NC1M>RT)%$)
M-!?<_5:RF%W^8YB57,9;HL$P$]DI<?SRGCR\2G *8O,]_ #2\GU/6NBO_GI*
M%_0$%O7W673_1$:$?]>4C(-^7,M#1PP!-:]S+^89&65$R.5&DM%9W-#*$N,C
M/_/!XA(N [.$F\)%)70^Y0\DOX<]_1F^JT92,HI;F@K+88_NWV*1HCIBY\"$
M4@TC)A)&$@WN>*X82-;KYG$6.QL*I$34S+16X)/NG#]69?3:S<8_OSP^09NH
M0 ] >X%>'R^.C]G_VGU(5%=4HM*_X^1/Z,?%ZS=O%C^^/F'/6NF_?CQ>G/SP
MNFV:TL,T3MC?2%V5%?TAS>\7+'-:5[$DJM!'*C[L>@U]=PPD3W[\4]OA]Z\7
MQZ^_:_]U\GKQ_0_?ZW9_AN.F]Q/6^P]ABB"*Q(2HSKU?Z6^KK+\GQ4V_8JE
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
M+=,\RN,TRE )F8E9%,%+ORJH(6K$@-G/RX<W\)35D1=/0BF0'V\ T7/QY U
M#^'$FL;!-YR#.:O4J^G$:MZ^/WL'EDPKK-;:'IDHOU;K, /SR*7\^ >&-D3<
ML7,_5I/S-MLA"'.CKL!;HL\P#\& /&9Q5V>QYZ<51P8J?&0>)BCIW%?,((_6
M:(I;<!1H#AY_S2D@9GSU762&Q!@GY7LZPH\19,JEO]G@HMI>T[FI3O/D_&]U
MN@%C++!K!CT8EYM1IN2^Y@R'@D R4!GQW,K+]!&BCL(]$C*9"V*!P;Z?#R4I
M[ .B[#I*DXO\7;1)JR@3R.=(:^-'/(.]NG^'TY)%&TKWB%K"F%,.]*!&SENB
MR3#O!;: B>>\^(>\](FTK7GYK,,^/53+ J)A2Y[(N4FT6!2B^I/(U%AYV>OW
M!:_Y2UW3%[FFI9V"EW0:-&O!']->Y!6FO*O K%YBD?T2M#)/E-+OS4-2%$8N
M5,Z30<X117;XEH8':B%)L96)PF$38SG8=>5>"#BM=&S-<@'5V&BE+=E LCLP
MU42%*9ZO .!<O")9@HL2CAC5=L29-OZ!J4->V+'S(CT]RO_R3W]\??+CG]@C
MWVH;QJ>FP&*BSS>7/K7;(@)WRL?M^HX\/0T*_V[@*=OKQ[58-,00I^;=WS7,
M,S+*",\G.7Y=4-Z2TY@*7X&UG5C:'9B>^90)^3H!J",RJIOL<+PFM9,;.'"/
MWP!"+:(%8IAX/OCY#7K*56/K?&'CWG3CW0 <-ERL-EQ7[@!][2/3N>W71/T<
MI3DD?KG*S])R0\J4IV62^A.4OC$T1-*^?=D>*0@3S;,UJBG*!O31-X#D6P2O
MCN=R.: F3<2(F7YU:2^3DD!W!ML8ZLI>7ZYUX[++J&6B !.A&IQS5?$ZDNKA
M>29*' E]R%4^W%H_U'H+$CN@;!3C90&_L0>G%)[+9W(L5SN.!SV>4;9"^AS)
M&[^A)J9'K%Y7SF_3Z+]8"J.0+_<&>4=4&.+9 .*,]GG_,\YQ$65T8WZ:K-.<
MI5>JT@?<7/*)C*+6QZ:&4HF(<T\@1[% ]QP'^I=HO?D3BO:PA+W U9P-,HW%
M8:R5-%7)<*.)%LM/0I*>S0J9@$3 P0&[%3[-R/EZDY$MQA]Q\9#&>#B4^9+D
M#[B$G$P0M5RRW4/_[^](65V2ZK]Q!2EA[_/T[UCT4,$Y/4-!=8;+UW[4V0!,
MMK4SXJ:!*[5%CQKX>Y6 ^@@7J!L#KPQ4+O9+"L$0:)L*;>E14I6ECJR2>\TC
MW@7 \[MKLEZG55MS]!UAC^EP'J=8F-]C_ O3M]+BGIV_C=B19A[VN$\\S(-=
M!383 ]X%>W<C$*>!%M-?UOA:H'HD39:428B-7229*FCWSW^&)%G(%,^&D4<\
MLQ-.DE9U 75O8@AI3=[6C0F'"#*1E=3\W-1D*I)Q;C\Y#GKJ;:\NHS@N:LB"
M4%<H;W8+$!P<QICJS@:9RN*OY,3#7VZ^)T7S*V@G2L(4!L3<SD:#8)_]@6EP
M5+,Z15GB^QR/5HNF$"M+;M$;WM=UY))KN8]SF(((^37KN[+<Y26NY$^>I&T-
MC>1@G^Z3UW1$%XC^']U*9!GY$E')9 J0D/JN6M99F_R%96;ZYQ^.7Z.HHBJX
MJ3!+R?3=\0(!6]EQ[I__\,./\.<SVC?_ZPG[ZP]!5$@^542+_[X%LJR*-*9J
MQ:XL/U$=*6\^?OH%2Y(Q*WUC+*"2OMT+:DN<OWY'C#SZ!@HX?8L^<Q!AO/5J
M/"=&C/3MGRJKJ^7/A"3E1Y()3UO#K8S]4'N]N?<]T56?VC (/0OE:QIF'U'D
MB?<G='NU,:EI/'^,LQJ"VP'@ES03O2[7^=3\L=TH"0\O\-H:J#R"<0&U'LW>
M8;D8C6'<VEV4P2Y@%K74I9(C*:8^SL 9>@YNH\>W.,?+M()<$_V_R*- [';N
M\J0_"F)6)_A1M,Y.Y@[XY/;$30&C!C'/_K)WX%9B5\B#M+IRZ!Z0-6<RD%6"
MS2C/*"<]8XRVGVH[GO;K/+E6)^'L9,%)ASU3C/-X2 3EC/,K5>]3>JS!']('
M*-Z\ORR?QG&]KC-X/M(OQ"X0-_..#.50GZ"O]4H?F<G:Y'3\DY[J[:BC2'F0
MCC1T@E@2>[R>C4[_7(C?&ZE^9E]?6?>NM9,1 8&L [T15>:OFN -,,US(JG6
M!?V>%&>- _JT\3_OO+1R#[U1'Z9IJ71H>?7HCSCSPR2,,IH98H7=GA]UQ"N<
MU) K4NF0 ..*(_Z0].D]&7@$2V%Y!5_T3)^.N,+E_+5) QP<QAK'X-T X,/=
M$-J;938(]/D6Q%2]2H2KYRK.A89XEP3?CU>;4A<?TAQ?T!]%^R!Q0^/'JT\[
M=)^)J:&(/@--Q(@&$EPQ-XDZB_R*RJZ@RM6R+^@WF.WSF4P?9/H?M?N6>C44
MPHG474OL?@V;/8=D@Y#;X\6>0>^2X7P.;9]M32YQ-&.^8R(8Q.NHJ+:W142!
MQRP"=C>D,64QZ,$X7D*9DOM# 9=TA@7UP:">?@27=9.Y(188[CE%"V5$5*XN
M6,Q<FM^?YLE[7C<KOV<KU$B"1^WO35.[J-)QGO:%Y$> A&4,95!8G-FR!8-@
MGA\"UEC1GQ$RF<UA,BG+KZ %K29F4O9\*?R$K&$@AR'R*>[QEFJ;_B!H2FC)
MC:F4.YZ/;O5FD['C092]HTKX/B-?+O(E*=;\_#F2:5?O:]-#GAH5]X^.J %F
MY1$HZ4!I=S7Y328RT;>)A4Q<M]$C+L?RU8L:&AO:IQVZCYD#BJ@"DBQ<#LYF
ME)=UGH1Q2DMX2M09Y?DV+DJ+7Z.LQKO][:BK0.D;TWLX6=^N)0J((T:]=Z*9
MP?%=C>'$B(N>L[3*HWTM1?3ZBMIMZ81)-RJ)89U#G*HP2[!X45+YQ+@6E+AK
M;YG )1B,TF!;'9-AB/<,LUVK2!$Q8:/G"(9=[,X9WA0X3MDVD_Z<8;;?S/=B
M>G13\MONWC3NP1(,7TIL"Z]123#_O)J4J)L]!>W%VR4]T,Q0! _ LZX$Q/5L
MS601EX7JJ7UD>R'W$J9W_7Q6.V'4G@X'O:]X$( %)6^@=#.D ?BT2:@"P</O
MXS?2!P5:WYJO5>,T7(O@#@3J4" .@SV0/SI^$_;9@=Y,D$GL]5X7 ?Q^5($>
MT@0G;[>?2HA\[6Y:3KLK)-&MFW8'YA45% GYVC>I(S(LR^!LO(8'(W;96$,<
M2)H/7C.&*N>@*X%D.IMGH::[RU%#-95T8%=-!P@%5M,!1!;5U,IX;:AI+S9@
MEFHJD\!Q-1UE\RS4](IN3J,I:BKIP*Z:#A *K*8#B"RJJ97Q3E'330,(W6T1
M:<',5%5E4CBNJJ.L]IU:M5Q!DF+Z'S@M/D09!'/R&/J+/"YP5.(SS/\K4%:3
M+HQ3K*J3\J6P.IA,5-;MF,W+EC&"L+0R!6:)NN$'O,,8*+VL@302&^SVJ[CL
M>=#8??YP(T/EV^_,EWKM4S51H*FX#9*B7)(*EX@1#J,%@HDG:EQ1E>1Z25&
M?!Z_^>Z82R?]39=PHAQVZTF:Z$KF0%>^LH&4BJXX%X@3$M<L6.TPG84TRG]#
M_\J>K>!N$&2)JA5&,5EOHGS[TJ^PRB2!J# K1 @>%,/D:7K H5G3G5RSI2-Y
M^18O28%[<6#GCU41D2))\ZC8LG!MB.>F7U+>9!#!W02[2F/YG%*<%!3H!)F_
M2&YG0S"+"I\11PVVA4W0YAT#V=2UA1#.P/'F[A7H( +4PQQZ3@$6%3F% KM@
M]O!O;-LYVMXT!9BH7^>+?D,8GNCSAZ#A0T?'F4RT.1=6K$;>4XPUMR14WIZM
M==6_$;4.J 3:81Y.C#)6(DAJ3R/ZP_I ?Z*_;']%_P_>5-/?_#]02P,$%
M  @ >DII2Q\IOEW:,0  QHL$ !4   !U9G!T+3(P,3<P.3,P7W!R92YX;6SM
M?5MSV[B6[ONI.O\A)_/,3IRDNY.NW3,E.W;*,T[DLIWT[*==, E)Z*8(;8"T
MK?[U!R!E6;*)&R\ ">&EV[%Q6?B(RUK?6ECXQW\]+--7=Y!0A+/?7Q_]]/;U
M*YC%.$'9_/?7WZ^CR?7)^?GK5S0'60)2G,'?7V?X]7_]Y__]/__X?U'T!6:0
M@!PFKV[7KVX6199 \ADOX:O_/;ZZ>!6]>OONM[<?)U]??;\Y>?7N[=&OT=%1
M]/9C%/WG/U*4_?4;_\\MH/ 5$R*CY3]_?[W(\]5O;][<W]__]'!+TI\PF;]Y
M]_;M^S>/I5]OBO._)OFVPF[AG]]4?]P6?='T_?NR[-&G3Y_>E'_=%J6HKB!K
M].C-_WZ]N(X7< DBE'%$8BX+1;_1\I<7. 9Y":-R"*^$)?B_HL=B$?]5=/0N
M>G_TTP--7C/47[VJH",XA5=P]HK___O5^5Z?Q6R5_Q3CY1L.^=M/[]^^X:7>
M,(ESN(19'F4XA]''B,)Y^4\"5YCD[(NST92-+PB<_?Z:-Q,]-L'[_P_]%O+U
MBLT4BI:K%+Y^LR/WBD#*:I1 7;!?;,IS ;L=0R4!?,@AFY0;Z!Z%2'&L&"G_
MS;^^L2[H#3Y#&?O4"*37CYW3R2W-"8CSQ\Y2< O3JAV#6I6(*9\VF&Q0$HFX
M.\EG@-Z6,Z:@T1R 58G1&YCF]/$WY6"BMT>;B?,?FU__ZS.B<8II0> -0^:8
M=?*7:"CZ-48^C.B=NX%<QS #!.'O&5W!&,T03-CV"5 F&(:RO(,A5 OPZG']
MU2 M&HQ^30?#>ERU;)."Y^Q'*AJ%L*!#H1_GR>0!*>6N*^M0]!MPFT*5S'N%
M9,+N'C<3$K_"A&DHO[]F6@[[RPP2 I.+J@_AB5R>.Z4@K,-2J_B-3U.8_/XZ
M)\56"D#B%X?8?D.;$F]6@/ 3*UZ@-'FL/2-X:7Y^8#UH6,<]P9(SQ1%>V,%&
MO=YPH_V^/W0L31JM!8V-#Q'O<-E?&75K1[P5:H-QY T8@O/,EVFAH]CB%LK*
M$T[_>%-K^71JS/W,+-([]B],$*21H1U77]F2"2?K/%AOP7H;L/5VOIFX:WV;
M1Z=*,$.#O1;LM5'H$L%>"_9:L->"O38$,(*]M@N+OJ)EUU!['\T (M$=2 L8
MX5DT>SPV2I<B*<J#P]2 ,VO4DF'71*A@\ 6#;\ &WQF;T#_X?'Z2CZHL/JTZ
MP>0+)E\P^4:AC@23+YA\P>0+)M\0P @FWRXL!IJ679OO742+%3.V^&^8^1,#
MNHAF*;YGAM ,DV79J:G)9]2F)8NO@4S!X-M3L4X89&<,L>L=' UL#=/J(S<%
M/1E&"$ -9F P T>FH@0S,)B!P0P,9N 0P AFX"XLS91@:Q9A@N/2]16!+(G8
M_U&^WK6/],U S8;ZM_V,!-$S^'8U%0KCG^;X[DT"$1?A _^!8_)A1S=AO_K7
MA,F0<#G.4K"]!;A12X1_;ZH^Z0IU4A ^O<_8_ /I/R$@IUGRF0%7(Y^J:-^B
M?MY\QDJ 2\AVU^2,_>ZY6JI5UJZP'"T]45^4M"7H^=."$-DINL4=B%RGZNL4
MM25J-0/%:TM:SI:0-ZP?B6R[?^Y;I--RESYAO1*0GK/]^.%_X+I&-FDY2T+B
MY1)GUSD[L:\73%>@TR(OLQ'LW/5^*;%&)4OB5[OZ]MX(5]IJ]RF=XG9$KB6
M1'^V(](92B$Y86MVCHEXGM:6LB/@%9PCKI)F^3>PK%OELF)V1/R!TX*I>Z2"
M23P%!>7L"/D'3-/_R?!]=@T!Q1E,SBDM(!$*JRC?M] 7< [22I(: D]2HF_!
M;@C@>]WU>GF+TQJQ:O_N#STG0QZK-K.QV\U:BAG6F)YCIU),@-!7O#V='K4D
MK=[)Y>D\42 BU8JU(7GG!R22\T0;BO=^0*''XVBC\L$/5)0:NC8@/_L$B(Z]
MIXW,+SXA(S5#M"'YU2=(M(P=;6@^^@2-/N&CC<\G/_ 1TXOZ:ILGFJP&"ZR/
MB2>ZK)9[1!\53]193?^6/BZ>Z+82'ZHU!WJ,F<65,3CX3Q2G*.$)B*-;D/*$
MO!%=0)C3**X4JVA5?KNHR$"1(%ZN F,!<\2^[': :G=[+]WV[YSO46QS5W[S
MH,-)FN)[+O$9)I]Q<9O/BG02QYBIB/0*QA#=<5)GHTT_XSM;M>$@!OQ)E;D$
M9$K*,)^DO-C -J)2NQ$,T*"FTV%5&MJDR!>8H+]AHAZ.J,8 AE'JX-I#V"\]
M /'%WE23*O8'<OEXFC99*&:570].<[GH51K&8*2+1EUA&(-0+QW-6N':Q\%=
M^YC.MK<&+C%%I;D@OT!D4C7<9W%_GZ4?86\(!+0@ZYT-12"QI*0_?OY&B\/Y
M79QPVV10N(3;)N&VB>FMM19<@G=31@I4$U-K[,$3;1"2VVUCCZ5HCTR=(3CV
M6(KVJ+3W=@XTJL(,&F,"=.RA%8WAZ6B;&6AX14M86NTQ PVK: F)M^$49K@H
MC6IK7M RX=)1= LHHCR[[FX_IKFD5,U82A^E)T;(&!42*@TXH=*4S$&&_BYG
M[LG6X\ZWPBRYW)G5.T35TW32?T>FKV[L W8%M]O )/FSH#G_Z2M<WKZX]650
M(WA4#LZC$AP/XZ3=0B*MD$@KN#:":\/])-'6*[Q#YN"=/H8IQOK5ONUR"!\B
MRGD,9GJ7,<++%<RH828RO78LL0B:<K2B$4X6 )$ER$X6",Y.'V!<Y.@.3F<S
M%$.RF0,H$=HQ+9HPT5)'P($(1+Q90+Z SS.V8W-8+E.0B:%4E[:OVT_N 4GX
ME2N).5);QFE(L-3L%I9SR19-9R<[2_P*IMSA<X)I3DMV]ICO I=@74Y4%:?2
M4:LC)\\\&89+#I!O0#Q+AF3MUQ5Q)ZB4J:HOY((H+)?A)2""%&7J@FZ%OB&
M[2@QWU+H\7KW+Y*)8MZ &PJ7H#C?A"1\SU!.KZZ_*TE<99U XS89PO:(VCW$
M)H1-GGFEL1VO7QQCI2[RI) P_5-G:^BSJ\!_!_X[\-^!_P[\=^"_37&IMZRQ
MS8/+%R@;Z)]87Q7W!:5:<P[KV5"^8*#V)HB-7E\\*L)Y8,)3^@*&>D(T-6Y]
M0:CAYMK:?^#=!1OA#)-P[+Y,(J6RHR#N?9D,2AP,*"?O[EE9"009R_6J$.Y@
M%N[0J6/,;G3#+]'V.T24KWK3NQ'B!BS%,Z@$\.8^A$#$I^N.?(9=%B1>L%EV
MA>8+272%=J4.!+R&!$$Z^>\B0YAPA0W%: 5X,N?]FYIB:9NUX"!2( 643F>E
M+%*_@+B@,Z'_ )S<R:>DG 02DEQ9?B!#T/D LAHC]^][,HSP]GLW+J3='4?'
M R8J'[R.P>O8R.O8E[!L?BYPRHP*>OKO N5KKGOI7Q,TKA\<J\&Q*C;_@F/U
MQ50Y+,>J^OS$^E: +Z"H+8:7H*@U<U_0,6#=Y$J9+WR]WAIJRPMXAY9P^F@:
M[+X HK?;-"#!?/$#V?5Y^., $IB5OIQ#ACZ/AI:37>_&KQ'*6"'(WVVIKCV:
MNC<D+5CR;R@E\,;!,4#ZT9-AN&113P')F$9&'Q-,JB@99?E ! <6]5!9U)&I
M%H%B#!1CH!C';+X-W-@/YEM#\TU3R[)KKGV*<+Y@5@YB'61SQ+YH!"CE[V\:
M6FWJABP9;[J"!!LNV' #MN'.M]-W4LY>?0>[0<U@UP6[+MAUH] Y@ET7[+I@
MUP6[;@A@!+MN%Q9C?<NNA7?T]M&;E8.'I[=A=-]AJ:]MZ_D56>_!@-M/[UD]
M]8BR^35_%0F0A'Y?)4P^5OZ7MY^DF<^,ZCH8VC;U-3W#Y!N\?Y+WDN",_1AO
MOH(DLVF3-D9NOWHR#+=F.-]^;L"#B?VMKA(,[V!X'ZKAW8^P/,O"=#9)\(JK
M'M+33E8T, :!,0B,06 ,1 E=&FF1V&3O\04JC41(S55R7TB7UO.I@>7F"W9V
MV3M_;A@$]FZ?O=.UUBS3=D?1*@5\J+N/.1G3=_)6;-%X.E*THO-.V0CP&L)K
M> <)4W7A8\:G299<P5*=+]_%HCD5Y[QIW$@'&7LN(*!LXI$ET]3%!HRZ9 >B
M?,5W[#AA8_X!XO)FW^D#3Z\%Q2+IU>A -'9 WA9DO<(D_PHH!?&BH#!G9R>(
M48KRM5A$LYI=B#H@@EF4QHJOR;VWXC1(+N.*(R<?/1F&2PZU3')9Q'E!V-;
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
M>7U;.N/U&[3DC3<5R#MW?$<I2+,<)2@M;\X]3>O3AS@M&%B/5QF*ZJM-9Z>
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
M.@6837OZ$*<%OU"DP-VDJHN!W;%)B\E:YF]\6<2^H#N+32#G3@F7I_..&.Q
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
MI9->6M*M-H0!K;>R2>ZBZ%8;Q(!NF!!F8WE>8P##8)HS_P68PR/=<=14&<!
M.+9FB^5E#0?#8!L]9@?="^'J=VBS6O:'\Q7\B<FC=%2R.,0%'5PV!TLXG>U)
M))U(RO(.+LWQ ^T*WL&L@#7)2N6EG(LKG>O2LN%>\<%=S0TW6L=Y:Z@713U<
M?0U77^7:!#8^MWT!1<?^P W48X_QJ;<U92!)#6Y?D%)?IE:I\[Y$ B@V&@6!
MY@L*ZOE@QN/X@DN3'47#O/$E$J31M*FGS#R>,=(SVH3W\67::.RY,G>1+R'@
M&C#(77:^1'[J *'A0.TOMF9P<,C]B?U%Q0P."(5CUY>MPFXFJ(%O%R$3E%G(
MO-1)X(O>I0>%ON=3)WYK\Q?^GUM (?O-_P=02P$"% ,4    " !Z2FE+9>Z%
M;OEU  "*A < $0              @ $     =69P="TR,#$W,#DS,"YX;6Q0
M2P$"% ,4    " !Z2FE+[L(=-HL-  #7G0  $0              @ $H=@
M=69P="TR,#$W,#DS,"YX<V102P$"% ,4    " !Z2FE+,H%]HW@*   ZC0
M%0              @ 'B@P  =69P="TR,#$W,#DS,%]C86PN>&UL4$L! A0#
M%     @ >DII2U%Y"%LL,   "D$$ !4              ( !C8X  '5F<'0M
M,C Q-S Y,S!?9&5F+GAM;%!+ 0(4 Q0    ( 'I*:4NNB6E6G4   (Z7 P 5
M              "  >R^  !U9G!T+3(P,3<P.3,P7VQA8BYX;6Q02P$"% ,4
M    " !Z2FE+'RF^7=HQ  #&BP0 %0              @ &\_P  =69P="TR
E,#$W,#DS,%]P<F4N>&UL4$L%!@     &  8 B@$  ,DQ 0    $!

end
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
